【问题标题】:Busybox tries to execute every command on embeddedBusybox 尝试执行嵌入式上的每个命令
【发布时间】:2015-05-25 16:38:57
【问题描述】:

我正在使用ptxdist 为 EFM32GG DK3750 构建 uclinux。它提供了一个带有busybox的小型unix shell。然后,当我尝试为分发编译 io.js 并将其复制到目标 bin 文件夹并在目标上运行程序时,我收到错误

iojs: applet not found

这与我输入busybox iojs 得到的结果相同。在shell中输入一个随机字符串,我得到系统上没有这样的文件。

/bin 中使用ls -l 表明iojs 是二进制文件,这与通过busybox 提供的其他命令不同,它们是符号链接。使用./bin/iojs 直接执行二进制文件会导致相同的错误。有什么方法可以告诉busybox不要尝试执行小程序,而是要使用bin中的二进制文件?

【问题讨论】:

  • 仔细阅读错误信息!该消息来自 io.js,而不是busybox。另外:输入./bin/iojs 时在哪个目录中? . 指的是当前目录。绝对路径为/bin/iojs。我会说 io.js 没有正确安装;有什么东西不见了。
  • 请注意,标题也具有误导性。您显然对 jo.io 有问题,不一定是busybox。请考虑修改。
  • 无论我在哪里尝试执行iojs,都会出现同样的错误。我可以在//bin 进行。据我所知,问题出在busybox,而不是io.js,因为如果io.js 遗漏了什么,这个错误对我来说没有意义。这个错误也是busybox经常说的(for example),但这看起来像是其他错误。
  • 我写的关于相对路径的内容仍然是正确的。对于错误消息,我更正了自己。那么它实际上可能busybox。对不起,我出去了;只是认为这是一个简单的PATH 错误(我仍然这么认为,但实际上我无法帮助处理busybox)。最后一个想法:你能运行任何其他二进制文件(没有busybox链接)吗?
  • 我可以安装一些其他的东西,比如ed,它是作为二进制文件安装的,这些可以运行。可能我可以对如何设置我的包做一些事情,但是从任何可能对我有帮助的文档中我都无法理解。

标签: embedded embedded-linux busybox


【解决方案1】:

检查 io.js 的二进制文件是否确实正确(大小和 md5sum 正确),而不是 busybox 二进制文件的副本。可能是包装问题。

【讨论】:

    猜你喜欢
    • 2021-08-09
    • 2014-08-13
    • 2016-10-10
    • 2016-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多