前言:
本次在进行驱动开发前,想使用buildroot环境,原因很简单,学习嘛,当然要用不常用的,buildroot的好处就是比如移植库函数到arm中,用buildroot就比较容易,否则自己要下载各种依赖包,然后编译在copy到arm中,比较麻烦。
Buildroot编译指定kernel版本5.4.61
menuconfig的Toolchain中修改
image.png
menuconfig的Kernel中修改,并且先选择Using an in-tree defconfig file
image.png
image.png
Buildroot参考网址:
https://zhuanlan.zhihu.com/p/111794541
https://blog.csdn.net/flfihpv259/article/details/51996204
开始定制内核
1.make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- linux-menuconfig出来的就是熟悉的内核配置界面。
2.在linux-menuconfig配置完成后,需要输入make linux-update-config把/buildroot-2019.02.1/output/build/linux-custom/.config更新到自定义路径下的apple335.config中。
3.最后output/images文件夹下的rootfs.tar解压到rootfs文件夹,通过NFS挂载zImage+dts+rootfs能正常启动。说明buildroot自定义kernel的环境已经搭建成功
4.若有修改源代码。路径是output/build/linux-custom。所以采用clean前一般要备份output下的host文件夹,若修改过源码需要备份build/linux-custom文件夹。最好就不要对buildroot进行clean,要clean可以仅对kernel进行clean。
image.png至此buildroot开发环境搭建完成,准备定制kernel咯~
注:若仅在linux-custom下面修改kernel源码,需要自己修改了linux-menuconfig中任意小功能,否则buildroot识别不了output/build/linux-custom中的c文件修改。
网友评论