安装交叉编译工具链

版本为---arm-2009q3.tar.bz2

虚拟机---ubuntu10.4


指定相应的安装路径,如/usr/local/mushan_arm,将安装包解压到该目录下:tar -jxvf arm-2009q3.tar.bz2(这个是当前路径中执行)。OK,此时的应用程序就被安装在/usr/local/mushan_arm/arm-2009q3/bin目录下了。



怎么测试是否安装成功?在bin目录下执行./arm-none-linux-gnueabi-gcc -v 。 如果安装成功,此时会打印出相应的版本号,如:



好了。那怎么利用gcc进行编译一个.C文件呢?那就带路径进行编译咯。如下执行:

/usr/local/mushan_arm/arm-2009q3/bin/arm-none-linux-gnueabi-gcc  test.c

如果每次编译都带上这个路径,太麻烦了,也记不住。咋办?平时执行ls、pwd等命令时,咋不这么复杂的?那是这行命令所在的路径都已经导出到环境变量中了。

怎么导出其环境变量?执行:export PATH=/usr/local/arm/arm-2009q3/bin:$PATH  注意路径名。此时就可以执行./arm-none-linux-gnueabi-gcc test.c 。  但是,在其他的终端执行时,就会出错,报告找不到该命令arm-none-linux-gnueabi-gcc ,那还得重新执行一次环境变量的导出,是的,这样就又可以了?那每次打开终端都这么执行,是不是累呢?  怎么办?   .bashrc文件就是用来解决这个问题。 每个终端打开的时候,.bashrc都会被执行,所以我们添加export PATH=/usr/local/arm/arm-2009q3/bin:$PATH到.bashrc文件中,这样每次终端打开时,就会帮我们导出环境变量,就可以了。


恩。 arm-none-linux-gnueabi-gcc命令名字是不是有点长,不好记,而且如果碰到版本不一样的是不是容易出错? 那就给他创建符号链接吧。


ln arm-none-linux-gnueabi-addr2line -s arm-linux-addr2line
ln arm-none-linux-gnueabi-ar -s arm-linux-ar
ln arm-none-linux-gnueabi-as -s arm-linux-as
ln arm-none-linux-gnueabi-c++ -s arm-linux-c++
ln arm-none-linux-gnueabi-c++filt -s arm-linux-c++filt
ln arm-none-linux-gnueabi-cpp -s arm-linux-cpp
ln arm-none-linux-gnueabi-g++ -s arm-linux-g++
ln arm-none-linux-gnueabi-gcc -s arm-linux-gcc
ln arm-none-linux-gnueabi-gcc-4.4.1 -s arm-linux-gcc-4.4.1
ln arm-none-linux-gnueabi-gcov -s arm-linux-gcov
ln arm-none-linux-gnueabi-gdb -s arm-linux-gdb
ln arm-none-linux-gnueabi-gdbtui -s arm-linux-gdbtui
ln arm-none-linux-gnueabi-gprof -s arm-linux-gprof
ln arm-none-linux-gnueabi-ld -s arm-linux-ld
ln arm-none-linux-gnueabi-nm -s arm-linux-nm
ln arm-none-linux-gnueabi-objcopy -s arm-linux-objcopy
ln arm-none-linux-gnueabi-objdump -s arm-linux-objdump
ln arm-none-linux-gnueabi-ranlib -s arm-linux-ranlib
ln arm-none-linux-gnueabi-readelf -s arm-linux-readelf
ln arm-none-linux-gnueabi-size -s arm-linux-size
ln arm-none-linux-gnueabi-sprite -s arm-linux-sprite
ln arm-none-linux-gnueabi-strings -s arm-linux-strings
ln arm-none-linux-gnueabi-strip -s arm-linux-strip

以后就可以直接执行arm-linux-gcc test.c 。


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值