首页 文章

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

提问于
浏览
19

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

10 回答

  • 2

    它有点违反直觉 . 工具链叫做gcc-arm-linux-gnueabi . 要调用这些工具,请执行以下命令: arm-linux-gnueabi-xxx

    其中xxx是 gccarld

  • 12

    尝试以下命令:

    which gcc-arm-linux-gnueabi
    

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

  • 6

    您已经在运行x86_64用户空间的盒子上安装了为i686编译的工具链 .

    使用i686 VM .

  • 5

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

    sudo apt-get install ia32-libs
    

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

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

  • 1

    固定,使用:

    sudo apt-get install gcc-arm*
    
  • 19

    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 找到它,但是在 locate 正常工作之前,您可能需要强制使用 sudo updatedb 更新您的定位数据库 .

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

    PATH=/opt/arm-2010q1/bin:$PATH
    

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

    CROSS_COMPILE=arm-none-linux-gnueabi-
    

    .bashrc 中,因为定义了 CROSS_COMPILE ,大多数工具会自动使用适当的编译器进行ARM编译,而无需执行任何操作 .

  • 7

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

    • 在Ubuntu框上安装用于交叉编译的包 .
    sudo apt-get install gcc-arm-linux-gnueabi make git-core ncurses-dev
    
    • 下载工具链
    cd ~
    git clone https://github.com/raspberrypi/tools
    
    • 将工具链添加到您的路径中
    PATH=$PATH:~/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian:~/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin
    

    请注意path命令中的x64版本

  • 3

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

    sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
    
  • 11

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

    sudo apt-get install lib32z1-dev
    
  • 1

    如果你使用64位版本的ubuntu或debian(参见例如'cat / proc / version'),你应该只使用64位交叉编译器,如果你克隆的话

    git clone https://github.com/raspberrypi/tools
    

    然后是64位工具

    tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64
    

    将该目录用于gcc-toolchain . 我在这里可以获得一个有用的编译教程Building and compiling Raspberry PI Kernel(使用上面的-x64路径作为$

相关问题