linux内核-将驱动编译进内核 例如:将hello world驱动配置编译进内核 1、在内核目录/drivers/char目录下新建一个hello子目录 2、在hello目录中,编写Kconfig,Makefile,hello.c等文件 Makefile: obj -$(CONFIG_HELLO) +=hello.o Kconfig: config HELLO tristate “hello world” //引号括起来的表示模块名 help this option enable support for hello world 3、修改hello的父目录的Kconfig,Makefile文件 Kconfig:source “drivers/char/hello/Konfig” Makefile: obj -y +=hello/
4、返回内核一级目录,打开内核编译脚本,找出内核编译使用的defconfig文件 例如: export ARCH=arm make LDDD3_vexpress_defconfig
可以看出内核编译使用的是arch/arm/configs/LDDD3_vexpress_defconfig
5、清除编译文件,复制arch/arm/configs/LDDD3_vexpress_defconfig为.config,然后配置 make distclean cp arch/arm/configs/LDDD3_vexpress_defconfig .config make ARCH= arm menuconfig ARCH=arm表示使用arm目标机 6、使用menuconfig配置 找到CONFIG_HELLO配置项,将其修改为*,然后保存退出 7、将.config文件复制到arch/arm/configs/LDDD3_vexpress_defconfig .config
7、执行内核编译脚本
7、确认编译结果,看drivers/char/hello是否有hello.o文件
|