学习Linux设备驱动时第一步就是构建内核树,首先下载Linux内核,按Linux Device Dervier 3作者的说法,只要是linux-2.6.xxx的内核都可以,我的是linux-2.6.30.4。
具体步骤:
(1) 下载内核源码包,并解压:[root@yanbo kerneltest] # tar -zxvf linux-2.6.30.4.tar.gz
(2) [root@yanbo linux-2.6.30.4] # make mrproper
(3) [root@yanbo linux-2.6.30.4] # make menuconfig
配置自己需要的选项(可以只配置需要的几项,也可以在.config文件中配置)。
(4) 编译: [root@yanbo linux-2.6.30.4] # make
(5) 编译模块: [root@yanbo linux-2.6.30.4] # make modules
(6) 安装模块: [root@yanbo linux-2.6.30.4] # make modules_install
(7) 安装:[root@yanbo linux-2.6.30.4] # make install
(8) [root@yanbo linux-2.6.30.4] # ls /lib/modules/
看是不是生成了一个名为 2.6.30 的目录,以后编译模块就可以在它下面编译,也可以在其他目录下通过makefile或者make指定目录。
注意:在构建内核树时,需要注意很多问题,既便是构建的时候没有问题,在以后的编译和装载模块时也会遇到,不过网络是最好的资源。
相关文章
- linux驱动:一、字符设备的介绍和demo
- 【Linux SPI】RFID RC522 设备驱动
- Linux 线程信号量,进程信号量和内核驱动程序信号量(线程同步信号量,进程同步信号量和设备驱动同步信号量)
- 如何编写一个简单的Linux驱动(二)——设备操作集file_operations
- linux设备驱动程序——将驱动程序编译进内核
- 将驱动编译进Linux内核
- linux设备驱动归纳总结(四):1.进程管理的相关概念【转】
- 驱动开发学习笔记. 0.04 linux 2.6 platform device register 平台设备注册 1/2 共2篇
- Linux字符设备驱动file_operations
- 在Ubuntu上为Android系统编写Linux内核驱动程序