2009-01-29 18 views
1

我正在尝试按照教程在Linux中创建自定义USB驱动程序,并且希望在使用g ++的Ubuntu Eee的Eee PC上开发这个东西。不幸的是,按照教程我需要linux/module.h头文件。根据我的理解,我需要编译内核才能使其工作。我从来没有编译过内核,所有的指令都是针对桌面Ubuntu的。在Ubuntu Eee上编译内核需要什么?

我在Eee上这样做,因为如果我可以做到这一点并将其用于课堂项目,我将在课堂上获得额外的学分。

,我下面的教程是在这里:http://www.linuxjournal.com/article/7353这里:http://www.linuxjournal.com/article/4786

+0

“GUYZ!PLZ帮我拿EXTRA CREDITT!” – 2009-01-29 20:14:13

+0

去#ubuntu u nub – 2009-01-29 20:15:38

回答

5

大多数(所有?)主要的Linux发行版,不仅分发Linux内核,但也适用大量补丁吧。从而提高稳定性并增加许多功能。 所以你要使用Ubuntu的软件包系统来抓取Ubuntu的补丁内核源代码!

你可能做不是需要重建内核!很可能,您只需要当前内核的kernel-headers包来编译USB驱动程序。假设你将它构建为一个内核模块,你可以使用modprobe或insmod来加载它。 (lsmod & rmmod也是有用的。)

如果你确实需要重建内核,那么很简单。 (So easy, I use kernel builds to test my hardware.)网络上有很多Kernel Building HOWTO's,试图找出你想要的模块,你想要编译的内容,以及你想省略的内容,你会感到很开心。你可以使内核更小,但你可能会错过一些的东西



修订补充:

我记得做 “sudo易于得到安装linux-头-的EeePC,”我需要更多吗?是什么?如果没有,那么那些人在那里头,因为它包括的“linux/module.h中”我的测试代码不会在Linux的头,EeePC的包编译

should be a way to list all the files。我来自RedHat/RPM世界。但我猜想像dpkg --contents linux-headers-eeepcdpkg --listfiles linux-headers-eeepc。你可能不得不玩一下。

或者,从http://packages.ubuntu.com/来看,像linux-headers-2.6.27-7这样的软件包包含文件/usr/src/linux-headers-2.6.27-7/include/linux/module.h。所以你可能只想看看/usr/src/*/include/linux/module.h。

或者,尝试:

定位的linux/module.h中| grep的 'LINUX/$ module.h中'

或者

查找/ -path“*/LINUX /模块。H”

(即找到可能需要一段时间才能完成......)