找不到gcc-arm-linux-gnueabi命令

use*_*441 23 linux ubuntu gcc arm gnu

我正在尝试为ubuntu安装gnu arm工具链.我首先从CodeSourcery下载了tar.但是当我进入bin文件夹时,我无法运行任何二进制文件.我已经尝试过./而没有把它放在PATH中,它一直告诉我"Command not Found"但文件就在我面前的文件夹中.然后我尝试了sudo apt-get install gcc-arm-linux-gnueabi,除非它说已成功安装,我找不到它的地方gcc-arm-linux-gnueabi.有人可以帮忙吗?

Sta*_*rds 19

你在64位操作系统上编译吗?尝试:

sudo apt-get install ia32-libs
Run Code Online (Sandbox Code Playgroud)

我在尝试编译Raspberry Pi内核时遇到了同样的问题.我在Ubuntu 12.04 64位上进行交叉编译,工具链需要ia32-libs才能在64位系统上运行.

http://hertaville.com/2012/09/28/development-environment-raspberry-pi-cross-compiler/

  • 在ubuntu上,当我发出此命令时,它会抛出错误 - 包ia32-libs不可用,但是由另一个包引用. (3认同)

Ahm*_*uar 19

固定,使用:

sudo apt-get install gcc-arm*
Run Code Online (Sandbox Code Playgroud)


mvp*_*mvp 11

CodeSourcery约定是arm-none-linux-gnueabi-为所有可执行文件使用前缀,而不是gcc-arm-linux-gnueabi你提到的.因此,CodeSourcery gcc的标准名称将是arm-none-linux-gnueabi-gcc.

安装CodeSourcery G ++后,需要将CodeSourcery目录添加到您的PATH.

通常,我更喜欢将CodeSourcery安装到类似目录/opt/arm-2010q1或类似的目录中.如果你不知道你在哪里安装它,你可以找到它locate arm-none-linux-gnueabi-gcc,但是你可能需要强制更新你的定位数据库sudo updatedb才能locate正常工作.

确定CodeSourcery的安装位置后,通过以下编辑方式将其添加到PATH中~/.bashrc:

PATH=/opt/arm-2010q1/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

此外,定义是习惯和非常方便的

CROSS_COMPILE=arm-none-linux-gnueabi-
Run Code Online (Sandbox Code Playgroud)

在你的.bashrc,因为有了CROSS_COMPILE定义,大多数工具将自动使用适当的编译器进行ARM编译,而无需你做任何事情.


Jee*_*tel 7

如果你在64位操作系统上,那么你需要安装这些额外的库.

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
Run Code Online (Sandbox Code Playgroud)


小智 7

尝试在VM下的ubunto 14.04.03 64bit上交叉编译raspberry pi内核时遇到了同样的错误.解决方案在这里找到:

- 在Ubuntu框上安装用于交叉编译的包.

sudo apt-get install gcc-arm-linux-gnueabi make git-core ncurses-dev
Run Code Online (Sandbox Code Playgroud)

- 下载工具链

cd ~
git clone https://github.com/raspberrypi/tools
Run Code Online (Sandbox Code Playgroud)

- 将工具链添加到您的路径中

PATH=$PATH:~/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian:~/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin
Run Code Online (Sandbox Code Playgroud)

请注意path命令中的x64版本


小智 5

我也面临同样的问题并在安装以下依赖项后解决了它:

sudo apt-get install lib32z1-dev
Run Code Online (Sandbox Code Playgroud)


use*_*604 1

尝试以下命令:

which gcc-arm-linux-gnueabi
Run Code Online (Sandbox Code Playgroud)

该命令很可能安装在/usr/bin.