Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103783214
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-05-29 13:11:22

作者: ginceo  出自:
debian传统方式:

apt-get install linux-source
tar zxvf /usr/src/linux-source-$version.tar.gz
cd linux-source-$version
make menuconfig
make-kpkg ……
cd ..
dpkg -i *.deb

这种方式行之已久,是正统的debian方式。但是也不是说历史久的就没有缺点。

1、没有debian补丁集,自己慢慢打很麻烦

2、和原有系统的集成程度不同。

3、和标准的dpkg-buildpackage 方式稍有不同,不大习惯

4、和系统中原有的内核不一样,所以对一些外在周边,例如restricted-modules什么的配合不方便。

ubuntu自身独有的内核编译方法:
apt-get source linux-source-2.6.22
cd linux-source-2.6.22-2.6.22/

编辑debian/config/i386/{config|config.generic}两个文件//相当于make menuconfig;config为所有deb公有配置,generic只对generic的deb有效

debian/scripts/misc/oldconfig generic //检查generic的config的完整性

AUTOBUILD=1 NOEXTRAS=1 fakeroot debian/rules binary-debs flavours=generic//只生成generic的包
cd ..
dpkg -i *.deb

linux-source-2.6.22可以一个源码包编译出n种架构的packages,但我们一般自定义内核只会要其中适合我们的一种。

这种方法编译的内核,和系统自带的内核只有你在config文件中修改的差别,所有的补丁都在解包的时候由dpkg系统自动打上了。想查看也是标准的diff.gz文件,和普通的deb source包完全一样。

大家编译愉快。大概要1g多的编译空间。
阅读(515) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~