总结下之前尝试过的搭建的编写Linux驱动程序的环境。由于之前的环境是centos,其他平台的差异,就自己注意下吧。
步骤如下:
Step1:下载kernel源码包,解压到/usr/src目录下
命令如下:tar Jxvf /home/yourAccount/linux-2.6.32.67.tar.xz
Step2:为系统的include创建链接文件
命令如下:
cd /usr/include
rm -rf asm linux scsi
ln -s /usr/src/linux-2.6.32.22/include/asm-generic asm
ln -s /usr/src/linux-2.6.32.22/include/linux linux
ln -s /usr/src/linux-2.6.32.22/include/scsi scsi
Step3:下载安装内核开发包
命令如下: yum install kernel-devel-2.6.32-504.el6.x86_64.rpm
如果是其他linux系统,这个命令肯定不同!注意
Step4:建立构建的软连接
命令: ln -s ../../../usr/src/kernels/2.6.32-504.el6.x86_64/ build
在用make编译过程中之前出现过如下问题:
make:*** /lib/modules/.6.32-504.el6.x86_64/build/:No such file ore directory.Stop
出现这个问题的原因是系统没有安装内核开发包,可以查看/usr/src/kernals.
若该目录是空,则说明没安装。若非空,则可能链接有问题,安装上面Step4中到/lib/modules/2.6.32-504.el6.x86_64 去建立软链接
注:内核版本通过uname -r自行查看,查找匹配源码包和开发包。
Linux最简单的驱动编写及测试流程:http://www.linuxdiyf.com/linux/12299.html
Linux驱动程序与应用程序函数的联系:http://www.linuxdiyf.com/linux/8735.html
Linux驱动程序中的platform总线详解:http://www.linuxdiyf.com/linux/9029.html