前言
做嵌入式开发,离不开交叉编译,我们学习单片机的时候,通常使用 Keil 、IAR 这类 IDE,只需要轻轻点击一下编译即可,无需自己安装交叉编译工具链,对用户屏蔽了很多编译细节;但是在 Linux 环境下学习嵌入式开发,一般是需要自己安装交叉编译工具链搭建编译环境的,这样我们对程序的编译原理会有更深层次的理解。
一、安装 make
查询 make 版本,若没有安装 make ,则会提示安装。
make -v
根据提示安装 make 。
sudo apt install make
安装成功后,可以查询到 make 的版本,我这里安装的是 4.2.1 版本。
二、安装交叉编译器
1. 获取交叉编译工具链
我使用的是 Linaro 公司的 Linaro GCC 编译工具链,如果小伙伴想要使用其他版本工具链的可以到官网获取。
点击进入 ==> linaro发行版官网 - Linaro Releases
这里我使用的是 4.9 版本的工具链,实测可用,懒得折腾的小伙伴可以直接下载该版本,按照下面的步骤安装即可。
点击获取 ==> 4.9 版本
2. 创建用于保存交叉编译工具链的目录,将下载好的压缩包放到该目录下
sudo mkdir /usr/local/arm
不知道如何操作的参考上篇文章:
WSL嵌入式开发系列教程 2 —— Windows 与 Linux 的文件互传
3. 解压交叉编译工具链到 /usr/local/arm 目录
tar -xvf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
4. 添加环境变量
sudo vi /etc/profile
export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin
5. 安装相关库
更新软件列表再安装相关库,否则可能安装报错
sudo apt-get update
sudo apt-get install lsb-core lib32stdc++6
6. 验证交叉编译器安装结果
arm-linux-gnueabihf-gcc -v
能看到版本号,说明安装成功了
总结
搭建好交叉编译环境后,我们就可以编译程序了,后面我会使用上述安装的交叉编译工具链编译 u-boot 程序,然后下载到开发板上进行验证,感兴趣的小伙伴可以继续关注。