天天看点

arm-linux-gcc 安装

1.下载arm-linux-gcc-4.4.3.tar.gz到任意的目录下。

  

2.解压 arm-linux-gcc-4.4.3.tar.gz

  将FriendlyARM文件夹拷贝到/usr/local/下

  # cd usr/local/

  #cp -rv  FriendlyARM /usr/local/

  现在交叉编译程序集都在/usr/local/FriendlyARM/toolschain/4.4.3/bin下面了(注意!复制完成后要记得修改权限,sudo chmod 777 FriendlyARM -R)

3.  修改环境变量,把交叉编译器的路径加入到PATH。(有三种方法,强烈推荐使用方法一)

  方法一:修改/etc/bash.bashrc文件

     #vim /etc/bash.bashrc

            在最后加上:

   export PATH=$PATH:/usr/local/FriendlyARM/toolschain/4.4.3/bin

    (如果不能编辑,先修改相关文件的权限使用chmod命令。)

方法二:修改/etc/profile文件:

# vim /etc/profile

增加路径设置,在末尾添加如下,保存/etc/profile文件:

export PATH=$PATH:/usr/local/FriendlyARM/toolschain/4.4.3/bin

  方法三:#export PATH=$PATH:/usr/local/FriendlyARM/toolschain/4.4.3/bin

  注:(这只能在当前的终端下才是有效的!)

4. 立即使新的环境变量生效,不用重启电脑:

 对应方法一:$ source /etc/bash.bashrc

 对应方法二:$ source /etc/profile

5. 检查是否将路径加入到PATH:

   # echo $PATH

  显示的内容中有/usr/local/FriendlyARM/toolschain/4.4.3/bin,说明已经将交叉编译器的路径加入PATH。至此,交叉编译环境安装完成。

6.测试是否安装成功

# arm-linux-gcc -v

如果提示错误:/usr/local/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: exec: /usr/local/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found

因为用的ubuntu是64位,需要添加32位的库,所以使用如下命令:

sudo apt-get install lib32z1

上面的命令会显示arm-linux-gcc信息和版本,这是我显示的信息:

 Using built-in specs.

Target: arm-none-linux-gnueabi

Configured with: /opt/FriendlyARM/mini2440/build-toolschain/working/src/gcc-4.4.3/configure --build=i386-build_redhat-linux-gnu --host=i386-build_redhat-linux-gnu --target=arm-none-linux-gnueabi --prefix=/opt/FriendlyARM/toolschain/4.4.3 --with-sysroot=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root --enable-languages=c,c++ --disable-multilib --with-arch=armv4t --with-cpu=arm920t --with-tune=arm920t --with-float=soft --with-pkgversion=ctng-1.6.1 --disable-sjlj-exceptions --enable-__cxa_atexit --with-gmp=/opt/FriendlyARM/toolschain/4.4.3 --with-mpfr=/opt/FriendlyARM/toolschain/4.4.3 --with-ppl=/opt/FriendlyARM/toolschain/4.4.3 --with-cloog=/opt/FriendlyARM/toolschain/4.4.3 --with-mpc=/opt/FriendlyARM/toolschain/4.4.3 --with-local-prefix=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-c99 --enable-long-long --enable-target-optspace

Thread model: posix

gcc version 4.4.3 (ctng-1.6.1) 

(!!注意:如果是64位系统,编译文件时提示出错:error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file object file,

命令:sudo apt-get install lib32stdc++6

安装此包即可)

7.编译Hello World程序,测试交叉工具链

   写下下面的Hello World程序,保存为 hello.c

#include <stdio.h>

int main()

{

printf("Hello World!\n");

return 0;

}

   执行下面的命令:

# arm-linux-gcc -o hello hello.c

    源程序有错误的话会有提示,没有任何提示的话,就是通过了,就可以下载到ARM目标板上运行了!

接着可以输入file hello的命令,查看生成的hello文件的类型,要注意的是生成的可执行文件只能在ARM体系下运行,不能在其于X86的PC机上运行。