【问题标题】:arm-none-eabi commands will not install correctlyarm-none-eabi 命令无法正确安装
【发布时间】:2013-04-01 19:43:55
【问题描述】:

我正在尝试在树莓派上安装汇编代码工具链。我使用以下过程安装包文件:

$ wget http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/downloads/arm-none-eabi.tar.bz2
--2012-08-16 18:26:29--  http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/downloads/arm-none-eabi.tar.bz2
Resolving www.cl.cam.ac.uk (www.cl.cam.ac.uk)... 128.232.0.20, 2001:630:212:267::80:14
Connecting to www.cl.cam.ac.uk (www.cl.cam.ac.uk)|128.232.0.20|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 32108070 (31M) [application/x-bzip2]
Saving to: `arm-none-eabi.tar.bz2'

100%[======================================>] 32,108,070   668K/s   in 67s

2012-08-16 18:27:39 (467 KB/s) - `arm-none-eabi.tar.bz2' saved [32108070/32108070]

$ tar xjvf arm-none-eabi.tar.bz2
arm-2008q3/arm-none-eabi/
arm-2008q3/arm-none-eabi/lib/
arm-2008q3/arm-none-eabi/lib/libsupc++.a
arm-2008q3/arm-none-eabi/lib/libcs3arm.a
...
arm-2008q3/share/doc/arm-arm-none-eabi/info/gprof.info
arm-2008q3/share/doc/arm-arm-none-eabi/info/cppinternals.info
arm-2008q3/share/doc/arm-arm-none-eabi/LICENSE.txt

$ export PATH=$PATH:$HOME/arm-2008q3/bin

这似乎有效,包文件在正确的位置。

 ~/arm-2008q3/bin $ ls
arm-none-eabi-addr2line  arm-none-eabi-gcc-4.3.2  arm-none-eabi-objdump
arm-none-eabi-ar         arm-none-eabi-gcov       arm-none-eabi-ranlib
arm-none-eabi-as         arm-none-eabi-gdb        arm-none-eabi-readelf
arm-none-eabi-c++        arm-none-eabi-gdbtui     arm-none-eabi-run
arm-none-eabi-c++filt    arm-none-eabi-gprof      arm-none-eabi-size
arm-none-eabi-cpp        arm-none-eabi-ld         arm-none-eabi-sprite
arm-none-eabi-g++        arm-none-eabi-nm         arm-none-eabi-strings
arm-none-eabi-gcc        arm-none-eabi-objcopy    arm-none-eabi-strip

但是,当我去制作时,我得到以下结果。

arm-none-eabi-as -I source/ source/main.s -o build/main.o
make: arm-none-eabi-as: Command not found
make: *** [build/main.o] Error 127

提前感谢您的帮助。

【问题讨论】:

  • 能否给出 echo $PATH 的输出
  • /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/uuqv/.rvm/bin:/home/uuqv/arm-2008q3/bin 还有uuqv@Theta ~ $ which arm-none-eabi-as /home/uuqv/arm-2008q3/bin/arm-none-eabi-as
  • 我尝试在 pi 上制作它,但收到一条新错误消息:make arm-none-eabi-as -I source/ source/main.s -o build/main.o /home/pi/arm-2008q3/bin/arm-none-eabi-as: 1: /home/pi/arm-2008q3/bin/arm-none-eabi-as: Syntax error: "(" unexpected make: *** [build/main.o] Error 2
  • 如果您尝试手动运行失败的命令会发生什么? arm-none-eabi-as -I source/source/main.s -o build/main.o
  • @UuqV 你找到解决办法了吗?!

标签: linux makefile raspberry-pi


【解决方案1】:

export PATH=$PATH:$HOME/arm-2008q3/bin 仅在执行它的 shell 中有效(以及从该 shell 生成的任何 shell)。所以你要么使用那个 shell 而不是打开一个新的 shell 来执行 make 或编辑你的 ~/.bashrc (参见Unix: Getting Export PATH to "Stick")

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,就我而言,问题是我运行的是 64 位操作系统,而要使用的软件包是 32 位的。修复方法是安装 i32-libs 包,它允许在 64 位系统上运行 32 位应用程序。

    # apt-get install ia32-libs
    

    【讨论】:

    • 我也遇到了同样的情况,但是 ia32-libs 不再可用!我现在该怎么办?
    【解决方案3】:

    您必须将编译器指向arm-none-eabi-as 所在的正确路径。你可以这样做

    导出 PATH=$PATH:/file_path_goes_here/

    当你编译时,你应该没有问题,因为编译器现在知道去哪里找了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-24
      • 1970-01-01
      • 1970-01-01
      • 2019-10-06
      • 2020-05-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多