一、获取安装包
在linux创建一个tool的文件夹,用来存放一些开发工具。
拷贝文件到ubuntu tool文件夹下
在 Ubuntu 中创建目录:/usr/local/arm,命令如下:
sudo mkdir /usr/local/arm
创建完成以后将刚刚拷贝的交叉编译器复制到/usr/local/arm 这个目录中,在终端使用命令“cd”进入到存放有交叉编译器的目录,比如我前面将交叉编译器拷贝到了目录“/home/luatao/linux/tool”中,然后使用如下命令将交叉编译器复制到/usr/local/arm 中:
sudo cp gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/ -f
拷贝完成以后在/usr/local/arm 目录中对交叉编译工具进行解压,解压命令如下
sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
二、修改环境变量
使用 VI 打开/etc/profile 文件,命令如下:
sudo vi /etc/profile
打开/etc/profile 以后,在最后面输入如下所示内容:
export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin
source /etc/profile
生效
三、安装相关库
sudo apt-get install lsb-core lib32stdc++6
四、查看版本号
首先查看一下交叉编译工具的版本号,输入如下命令:
arm-linux-gnueabihf-gcc -v
五、验证
编译第一个逻辑例程“l_leds”
裸机例程在开发板光盘中的路径为:1、程序源码->1、裸机例程-> 1_leds
在前面创建的 linux 文件
夹下创建 driver/board_driver 文件夹,用来存放裸机例程
进入l-leds然后执行make编译
可以看到例程“1_leds”编译成功了,编译生成了 led.o 和 led.bin 这两个文件,使用如下命令查看 led.o 文件信息:
可以看到 led.o 是 32 位 LSB 的 ELF 格式文件,目标机架构为 ARM,说明我们的交叉编译器工作正常。