ubuntu 下编译 linux设备驱动程序

  学习linux设备驱动编程,用的系统是ubuntu10.10,hello程序已经编译成功,看《linux设备驱动程序》第六章,前辈教导我们要先看书,边实践,这样才能成长的快一些,所以看了代码后,想编译一下书自带的源码scull,历程比较坎坷。首先报告Makefile的CFLAGS报错,没管它,直接在注释掉,继续make,报告没有config.h,谷歌了一把,网友说现在的内核没有config.h,可以自己创建一个,于是我在/usr/src/linux-headers-2.6.35-24-generic/include/linux 下创建一个空的config.h,继续make,继续报错:access.c:107: error: dereferencing pointer to incomplete type,不知道什么原因,找了好久终于找到一个帖子http://blog.csdn.net/renclear/article/details/6560402,上面说由于内核数据结构发生变化引起,需要添加linux/cred.h ,加了还是不行,接近崩溃了,后来终于巧合下再添加linux/sched.h,终于编译通过,还是非常感谢写这个贴的作者renclear,还有其他网友,我写这个贴一来是记录自己学习的经历,二来希望能给其他人以帮助,这些都是网友功劳。《三个火枪手》是我比较喜欢的一本书,里面有句话说的很好,“人人为我,我为人人”。