一、基本概念
通常我们在Linux环境下进行开发,编译出的镜像文件需要在ARM板卡上运行。Linux环境编译器gcc是x86架构的,而ARM板卡需要ARM架构,这样就需要使用交叉编译工具链进行编译,从而保证在x86环境下开发的代码最终编译生成ARM架构的镜像,可以直接在板卡上运行。
二、安装步骤
2.1 官网下载压缩包
-
Linaro官网地址如下:
https://www.linaro.org/downloads/
-
寻找跟板卡CPU架构吻合的工具链(这里以imx6ull芯片为例,ARM-A7架构(32bit Armv7))
找到【arm-linux-gnueabihf】后面的描述为【32-bit Armv7 Cortex-A, hard-float, little-endian】
-
点击后面的Binaries
-
发现有很多可供使用的编译器,本人在这用的4.9版本的编译器
附上4.9版本编译器所在链接: https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/arm-linux-gnueabihf/ 64位系统,则选择如下编译器进行下载: gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz 32位系统,则选择如下编译器进行下载: gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabihf.tar.xz
2.2 开始安装
2.2.1 解压工具链到固定目录下
-
依次执行下述命令进行解压(目录可以根据自身需要进行修改,本人保存在/usr/local/arm/下)
sudo mkdir /usr/local/arm sudo mv gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/ cd /usr/local/arm sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz rm gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
2.2.2 配置环境变量
-
打开/etc/profile文件
sudo vim /etc/profile
-
文件末尾添加
export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin
-
重启系统
2.2.3 安装相关库
-
安装下述依赖库
sudo apt-get install lsb-core lib32stdc++6
2.2.4 验证
-
输入命令
arm-linux-gnueabihf-gcc -v
-
打印末尾有版本号,则表明安装成功
xxx xxxx xxxxx Thread model: posix gcc version 4.9.4 (Linaro GCC 4.9-2017.01) lsy@ubuntu18:~/Tools$