在上一章节我们编写了最简单的 helloworld 驱动程序。有了驱动程序以后,要如何编译并使用驱动呢。编译驱动有俩种方法,分别是将驱动编译成内核和将驱动编译成内核模块。我们先来学习如何将驱动编译成内核模块、
4.1 设置交叉编译器
1 下载网盘资料下的交叉编译器,网盘路径为:“XXX”,将下载的交叉编译器拷贝到Ubuntu 的/usr/local 目录下,如下图(图 4-1)所示:
2 输入以下命令,解压交叉编译编译器压缩包,解压完毕会生成
“gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu”文件夹,这是实验需要的交叉编译工具,如下图(图 4-2)所示:
tar -vxf gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.gz
3 在终端输入“sudo vi /etc/profile”命令,在文件最后输入以下命令修改环境变量。
export PATH=$PATH:/usr/local/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin
4 保存退出,在终端输入“reboot”命令重新启动 Ubuntu 系统,使交叉编译环境生效。Ubuntu 系统重新启动之后,登录到系统后,打开终端,输入命令“aarch64-linux-gnu-gcc -v”,
如果终端有如下图(图 4-4)所示的打印信息,说明交叉编译环境搭建成功。如果没有出现如下图(图 4-4)的打印信息,需要检查上一步骤是否设置正确。