问题标签 [buildroot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1375 浏览

bash - lxdialog 和 kconfig (menuconfig) 如何协同工作?

我想了解 menuconfig 是如何完成的,例如:对于 linux-kernel 或 Buildroot。我所知道的是,它使用 lxdialog 作为 GUI,并且 kconfig 以某种方式承载了逻辑部分(如选择、依赖等)。

但是对话框在哪里或如何从 kconfig 文件中获取信息?互联网上似乎没有太多信息。

感谢您的支持

[我发现了什么:]

我相信kconfiglib用于加载菜单,但没有给出示例,这是如何完成的:/

0 投票
1 回答
1231 浏览

linux - Buildroot - cubieboard 2 无法启动

我刚从朋友那里借了 cubieboard2 并试图启动它。我将电源连接到 2A USB 充电器,将 hdmi 连接到显示器,将键盘连接到 USB。红色(电源)灯亮。

SD 卡系统未从 NAND 启动,内核消息显示,但挂起

什么也没发生,但系统正在响应,因为当我插入 SD 卡时,它会显示正确的消息:

NAND上的默认系统应该是android(我的朋友没碰过),但是除了内核日志我什么也得不到

使用 lubuntu SD 卡系统可以正常启动,但我得到的第一个图像是桌面。开机后 - 屏幕打开,但全黑,根本没有消息。大约 3 分钟后,桌面出现。

使用与http://www.smida.it/geekeries/cubieboard-buildroot.php完全一样创建的默认 cubieboard2 busybox - 这是最令人沮丧的部分!在我的电脑上使用虚拟 gentoo 机器制作图像大约需要 5 个小时。之后,我用我的操作系统创建了 SD 卡。当我插入 SD 卡并启动设备时 - 屏幕打开,有一些 SD 卡活动,但根本没有图像。屏幕为黑色(但已打开),SD 活动 LED 闪烁片刻,然后……什么也没有。Num-lock 响应,按随机键 - 没有 SD 卡活动,但 alt-ctr-del 让板重新启动。

  • 我怎样才能让我的董事会工作?
  • 有没有办法“调试”它?通过连接串行接口或类似的东西?
  • 我可以使用 qemu 在我的 gentoo 虚拟机上“模拟”图像吗?
  • 也许我正在做明显的错误?
0 投票
1 回答
931 浏览

linux - 在处理 init 之前强制加载 Linux 内核

我很难找到解决这个问题的好方法。我有两个运行 Buildroot Linux 的 SBC,除了 USB ACM 卡外几乎完全相同,我试图在启动时检测它并根据 SBC 动态加载服务(例如,如果卡有脚本“touch sbc1”检测到或“触摸 sbc2”,如果不是,然后使用此文件为网络加载不同的配置)。

我正在使用静态开发表、Busybox init 和 3.12.20 内核(USB CDC 被编译为内置驱动程序;我禁用了模块)。这就是问题所在:我编写了一个脚本(S00setup,因此它是 rcS 中应该运行的第一个脚本;这个脚本必须在网络脚本之前运行)来检查这张卡的存在。似乎 CDC ACM 驱动程序加载在两个板上,无论它是否存在,因此检查不起作用(缓冲区总是说 usbcore:注册的新接口驱动程序 cdc_acm 后跟 cdc_acm:USB 调制解调器和 ISDN 适配器的 USB 抽象控制模型驱动程序) . 此外,我的 dmesg 输出会在大约 2 秒后从脚本中调用它,并且只有在那之后它才会实际将 /dev/ttyACM0 分配给设备。如何在处理此初始化文件之前强制内核完成引导,以便正确检测到它?在这里“睡觉”有用吗?如果不是,那又如何?Bash/Linux 是否有某种类型的 DoEvents()?使用 lsusb 检测卡的情况相同,因为在处理脚本之前设备不会显示,这对我来说没有意义。所以要问一个类似的问题,我想另一种方法是强制轮询 USB 设备;有没有办法做到这一点?我想另一种方法是强制轮询 USB 设备;有没有办法做到这一点?我想另一种方法是强制轮询 USB 设备;有没有办法做到这一点?

我在这里发布了这个问题而不是 Unix&Linux,因为这里的你们似乎对此更有经验,如果有任何快速程序我可以编写来强制内核完成处理。当它实际将设备分配给 ttys 和诸如此类的东西时,我只错过了额外的 1-2 秒的内核缓冲区。这是我需要区分两个板的输出。显然,我这样做的原因是因为我想在两个系统上使用相同的操作系统映像;出于配置管理的目的,这种方式要容易得多。

0 投票
1 回答
402 浏览

mips - 在 buildroot 中,如何启用已弃用的功能?

我必须为使用 MIPS1 指令集的 mips 编译 C,但 Buildroot 不再支持 MIPS1 指令集(请参阅本页底部:http://buildroot.org/downloads/manual/manual.html

您能否告诉我如何在 Buildroot 中启用已弃用的功能(即 MIPS1 指令集)?

任何意见将不胜感激。

0 投票
2 回答
2901 浏览

linux - MIPS交叉编译错误:非法指令

我想为 MIPS 机器交叉编译 C src,但编译失败。在目标机器上执行交叉编译的二进制文件会输出“非法指令”。你能告诉我如何为 MIPS 机器编译 C src 吗?

详情如下:

执行“readelf -h host.bin”(host.bin 是在 HOST 机器上运行的二进制程序)输出:

执行“readelf -h target.bin”(target.bin 是目标机器上运行的二进制程序)输出:

执行“readelf -h cross_compiled.bin”输出(cross_compiled.bin 是目标机器交叉编译的二进制文件):

对于交叉编译,我使用了支持 MIPS1 交叉编译的 buildroot。

我预计 cross_compiled.bin 在目标机器上正常执行。但是,当我在目标机器上执行“cross_compiled.bin”时,它会输出“非法指令”。

你能告诉我如何解决上述问题吗?由于我是交叉编译的新手,我无法找到问题的确切原因。

任何意见将不胜感激。

更新:

在目标上,执行“cat /proc/cpuinfo”输出:

在目标上,执行“cat /proc/version”输出:

我用于交叉编译的命令行(cross_compiled.bin):

cross_compiled.c:

由于我的 cross_compiled.c 非常简单,我相信没有与使用的库相关的问题。

0 投票
0 回答
92 浏览

linux - 我应该参考哪些东西来正确配置交叉编译器?

我已经参考了“readelf -h target.bin”的输出(target.bin 在目标机器上运行)来配置交叉编译器。我假设交叉编译器编译的二进制程序的 readelf 输出应该与 target.bin 的输出相同。

但是,在以下情况下,两个具有不同“readelf”输出的程序可以在目标机器上成功运行。此外,具有与 target.bin 的输出类似的 readelf 输出的另一个程序在目标机器上不可执行。似乎 readelf 输出对于交叉编译器的配置并不重要。 那么...对于目标机器的交叉编译器的正确配置,我应该参考哪些内容?

例子:

readelf -h target.bin(target.bin 是运行在目标机器上的二进制程序)输出:

readelf -h myfail_target.bin(由我编译)在目标机器上不可执行,输出:

readelf -h mysuccess_target.bin(由我编译),可在目标机器上执行,输出:

任何意见将不胜感激。

0 投票
1 回答
205 浏览

linux - rpi的buildroot,输入make后,返回错误

当我为 RPI 构建 root 时,在最后一步,当我输入 make 时,它​​返回一个错误,

如何解决这个问题,谢谢。

0 投票
1 回答
8542 浏览

c++ - “嘘:./尝试执行文件时未找到”错误

我遇到了一个我遇到过的最奇怪的问题。我正在为带有板载 Linux 的 ARM CPU 交叉编译一个应用程序。我正在使用buildroot,一切顺利,直到我尝试在目标上运行应用程序:我得到-sh: ./hw: not found. 例如:

将可执行文件加载到目标;然后在目标上发出:

还有更多:在使用发行版编译器构建时arm-linux-gnueabi-g++ -march=armv7-a /tmp/test.cpp -o /tftpboot/hw,应用程序运行良好!

我通过 比较了可执行文件readelf -a -W /tftpboot/hw,但没有注意到太多差异。我在这里粘贴了两个输出。我注意到的唯一一件事是行Version5 EABI, soft-float ABIVersion5 EABI. 我尝试通过传递-mfloat-abi=softfpand来消除差异-mfloat-abi=soft,但编译器似乎忽略了它。不过我想,这并不重要,因为编译器甚至没有警告。

我还认为,如果可执行文件以某种方式不兼容,也许sh会输出此错误。但是在我的主机 PC 上,我在这种情况下看到另一个错误,例如:

0 投票
2 回答
2598 浏览

audio - arecord 创建的多个文件

我使用 buildroot 进行了自定义分发,并为 ARMv7 处理器提供了硬流程。一切正常,除了......

这会产生多个文件。成千上万的人。

等等...

如果我传递 -d 参数,就会发生这种情况。任何想法?

0 投票
1 回答
664 浏览

c++ - Busybox 编译失败 - 网络/nslookup.c 错误

我正在尝试使用 Buildroot Cross-Compiler 编译 Busybox。

以下是步骤:

(交叉编译器的路径是正确的)

编译返回以下错误:

如果我不使用交叉编译器,一切都会很好。

你有什么建议吗?