嵌入式开发(一) Ubuntu12.04下搭建交叉编译环境

本文详细介绍了如何在Ubuntu 12.04 64位系统中搭建适用于嵌入式设备的arm交叉编译环境,包括下载交叉编译工具包、解压缩、设置环境变量等步骤,并解决了64位系统下可能遇到的32位库缺失问题。

操作系统:Ubuntu12.04 AMD64位

交叉编译环境:arm-Linux gcc版本4.4.3

前言:

     首先理解一下交叉编译的意思。我们要给嵌入式设备写应用程序,但是又不能在嵌入式设备上完成所有的代码开发工作,只能在一台工作PC上完成然后编译成二进制文件上传到嵌入式设备上。但是我们选用的编译工具链不能是工作PC上的,应该是嵌入式设备上的编译工具链,所以,我们要在PC上搭建适用于嵌入式设备的交叉编译工具链。例如,PC上的gcc版本可能是4.6但是arm-linux-gcc的版本却是4.4.3.

搭建过程:

     一、下载适合自己开发板的交叉编译工具包 本文以arm-linux-4.4.3.tar.bz2为例

     二、解压缩到/usr/local/arm目录下面

# tar xvf arm-linux-4.4.3.tar.bz2 -C /usr/local/arm
     三、设置环境变量
# vi /etc/profile
末尾添加行export PATH=$PATH:/usr/local/arm/arm-linux-4.4.3/bin
     四、导入环境变量
# source /etc/profile
     五、测试
# arm-linux-gcc -v
出现以下画面说明是ok了。。。

但是很有可能没有这么顺利,楼主我就遇到了一个问题,在输入上面命令后,出现如下错误:

/home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: exec: /home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found

在网上查了一下,发现是因为Ubuntu使用的是64位系统,需要安装一些32位的库:

$ sudo apt-get install ia32-libs

又因为ia32-libs是一个正在被淘汰的库,所以可能有些它的依赖包是不会被自动下载的,你可以根据他的提示先安装一下ia32-libs的依赖包,最后就可以把它装上了。

然后再用# arm-linux-gcc -v 试试就好了!

 

转载于:https://www.cnblogs.com/holmestian/p/3929545.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值