工欲善其事,必先利其器,既然要编译内核,首先要搭建交叉编译环境,安装的ubuntu19是64位系统,所以用到编译器的工具链为:gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf,这里没有用最新的版本,因为可能某些配置等原因,编译内核的时候错误。
下载地址:http://releases.linaro.org/components/toolchain/binaries/latest-4/arm-linux-gnueabihf/
操作步骤:
软件下载以后,就开始解压配置。
1、创建目录
我们在系统/usr/local/目录下创建一个文件arm文件夹,用于存放交叉编译工具,目录为:/usr/local/arm,将下载交叉编译器拷贝到此目录下。如果使用Filezilla传输失败,可能是没有权限,可以先拷贝到一般用户目录下,在系统中使用sudo cp命令在复制到arm文件夹下。
2、解压
在/usr/local/arm目录下解压交叉编译工具,解压命令:
sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz
等待解压完成后,会生成一个名为gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf的文件夹,这个文件夹就是的交叉编译工具链;
3、修改环境变量
打开/etc/profile文件,在最后输入:
export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin
路径也就是交叉编译工具解压的路径。修改保存后,重启系统,交叉编译工具链(编译器)就安装好了。
4、安装相关库
再使用交叉编译器之前,还需要安装一下其他的库,如下:
sudo apt-get install lsb-core lib32stdc++6
5、交叉编译器验证
首先查看一下交叉编译工具的版本号,如下:
arm-linux-gnueabihf-gcc -v
如果安装正确,则会显示版本号,通常情况下,arm-linux按下TAB键会自动补全。