【问题标题】:Toolchain binaries cannot be found找不到工具链二进制文件
【发布时间】:2014-07-10 06:24:06
【问题描述】:

尝试为我的 mini2440 ARM 板构建最新版本的 u-boot 引导加载程序,我设法从 codesourcery 下载了一个工具链包并将其解压缩到以下路径:/usr/local/arm-2008q3/

我还为当前会话导出了以下值:

export PATH=$PATH:/usr/local/arm-2008q3/bin
export CROSS_COMPILE=arm-none-linux-gnueabi-

当我运行 make 时,我得到以下输出,但我不知道为什么:

make: arm-none-linux-gnueabi-gcc: Command not found
for dir in tools examples api_examples ; do make -C $dir _depend ; done
make[1]: arm-none-linux-gnueabi-gcc: Command not found
make[1]: Entering directory `/home/deth/uboot/mini2440/tools'
make[1]: Nothing to be done for `_depend'.
make[1]: Leaving directory `/home/deth/uboot/mini2440/tools'
make[1]: arm-none-linux-gnueabi-gcc: Command not found
make[1]: Entering directory `/home/deth/uboot/mini2440/examples'
/bin/sh: 1: arm-none-linux-gnueabi-gcc: not found

我仔细检查了所有内容,二进制文件确实位于上述文件夹中,但是...请解释我错在哪里。

【问题讨论】:

  • 实际上所有的二进制文件都有执行权限。
  • 您正试图在现代操作系统上运行 6 年的二进制文件。会不会是 libc 不兼容?你从ldd /usr/local/arm-2008q3/bin/arm-none-linux-gnueabi-gcc 得到什么输出?
  • unixsmurf,总的来说你是对的,使用最新版本总是更好。那时我太懒了,无法执行所有注册过程来获取最新的。但是,在找到解决方案后,旧的二进制文件也能正常工作。

标签: linux arm cross-platform embedded-linux gnu-toolchain


【解决方案1】:

好吧,经过将近三天的头撞墙后,我设法解决了这个问题。老实说,如果偶尔没有使用他们提供的可执行安装程序安装 COdesourcery 工具链,我可能永远无法解决它。之后,手动解压版本开始执行!这当然导致了一个结论,即缺少库。我试图在单独的虚拟机上重现该问题,瞧,这里有几个词解决了整个问题:

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0

希望这对某人有所帮助,并感谢大家的帮助!

【讨论】:

    猜你喜欢
    • 2013-10-05
    • 2013-03-24
    • 1970-01-01
    • 1970-01-01
    • 2021-10-07
    • 2015-02-14
    • 1970-01-01
    • 1970-01-01
    • 2021-10-30
    相关资源
    最近更新 更多