详细步骤参考以下连接:
为什么要配置内核?
因为Linux源码支持多平台多架构,里面有各个平台的代码,我们需要根据芯片的架构和平台去选择我们需要的代码
入门程序员的配置方法:
- 使用厂家给的
.config
文件(不好修改) - 使用
make menuconfig
(可以选择删减部分,图形化界面,只能修改选项有的) - 自己写
.config
(灵活修改,难)
配置源码可以选择驱动的加载方式
驱动两种加载方式
*编译进内核 zImage包含了驱动
M 模块方式生成驱动文件xxx.ko 系统启动后,通过命令inmosd xxx.ko 加载
不到万不得已直接用1,省事
资深程序员的配置方法:
上面都是选择使用源码的哪一部分,不使用哪一部分,资深程序员选择直接修改内核源码,哈哈哈
配置完,编译好后,移植内核需要三种文件
ZImage:内核镜像 (树莓派需要把ZImage打包成.img文件)(设备树和镜像拷贝到/boot分区)
dtb:设备树(树莓派的好像是配置文件,但好像别的平台很多都是设备树)(功能:平台硬件配置)
modules:应该就是前面我们选择已M(模块)方式加载的的驱动,因为没有加载到内核镜像种所以需要手动复制到板子。一般复制到/lib/modules这个目录下。