Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->发行版专区 ->Debian ->正文

Debian/Ubuntu Linux下内核编程者必备

来源: 作者: 时间:2007-04-11 点击: [收藏] [投稿]

3、kernel-source

从这个包的名称上已经知道了,这是内核源码包。你可以apt-cache search kernel-source搜索到内核源代码包,并用uname -r命令查看到当前系统内核版本,然后用apt-get install kernel-source-xxxx来安装和你内核版本一致的内核源代码包。

但我并不建议你这样做,因为大多数发行版的Linux的内核源代码包并不是和你从kernel.org上下载来的完全一致,应该是经过发行者们修改优化过的包,虽然发行版的制作者们花了心血在上面,但对我们编程者来说这并不是件好事,因为大多发行版的源代码包缺少某些必要的头文件和某些有用的脚本程序,这会导致我们在编写内核模块时遇到麻烦,比如编译时可能会报错说某个头文件找不到,又可能报错说某个脚本程序不存在啦。

如果你直接去kernel.org上下载一个新的内核来编译升级你的内核,并在此基础上进行内核编程可能会省事一些,至少我后面讲到的这些包你都可以不用安装了,把KERNEL_DIR变量设置为你内核源代码包的位置就够了。

在这里还是以Debian 3.1、内核2.6.8-2-386为基础来教大家准备内核编程环境吧。那么你依次用这几个命令来安装kernel-source包吧。

apt-cache search kernel-source
uname -r

apt-get install kernel-source-xxxx

注:如果你不想重新编译内核,内核源代码包kernel-source是完全可以不下载来的。

4、kernel-headers

这是内核源代码头文件包,不管你是要进行内核模块开发还是进行驱动程序开发,这个包都是必须要安装的。因为作为一个内核模块编写者,通常会调用内核里的一些东西,比如内核头文件,内核数据结构申明等。它里面包含了一些关键的内核头文件。否则在编译内核时会报类似下面的错误:

HOSTCC  scripts/basic/fixdep
scripts/basic/fixdep.c:105:23: error: sys/types.h: 没有那个文件或目录

输入如下命令来安装吧:

apt-cache search kernel-headers
uname -r
apt-get instakk kernel-headers-xxxx

注:在Ubuntu下,好象这个包的前面都加上了linux-,从而变成了linux-kernel-headers。

如果之前没有安装过kernel-kbuild包,安装此包的过程中会安装kernel-kbuild包,这个包在下面介绍。

5、kernel-kbuild

这个包是用来编译内核模块的,下载安装这个包后会发现在/usr/src目录下多了一个kernel-kbuild-xxxx开头的目录,下面只有scripts一个目录,显然这是用来编译内核模块的一些脚本程序。安装方法一样:

apt-cache search kernel-kbuild
uname -r
apt-get install kernel-kbuild-xxxx

注:你也会发现,在上面安装kernel-headers包后,/usr/src/kernel-headers-xxxx目录下有个scripts目录,其实是到/usr/src/kernel-kbuild-xxxx目录下的scripts的一个链接。

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:在Debian的Linux 2.6内核Ipv6的问题   下一篇:在Debian操作系统中网卡的设置步骤

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号