红星照耀中国 发表于 2003-12-7 00:24:24

Where are these kernel config files abovementioned?
Give me a link please!

cnhnln 发表于 2004-4-29 17:22:28

是我做的,其实简单得不得了
1.先在redhat那里下载最新内核的src.rpm
2.rpm -ivh kernelxxx.src.rpm,这将会将kernelxxx.spec安装在/usr/src/redhat/SPEC目录下,将内核源码补丁还有config都安装到/usr/src/redhat/SOURCE目录下
3.进入/usr/src/redhat/SOURCE,修改相应体系的config文件(基本的有i386,i586,athlon,i686),加入或修改某些选项,譬如,加入ntfs支持就是确认config文件里有:
CONFIG_NTFS_FS=m
CONFIG_NTFS_RW=y
加入默认cp936编码支持就是:
CONFIG_NLS_DEFAULT="cp936"
4.修改一下/usr/src/redhat/SOURCE下内核源码中,PS手柄驱动里的PSX_delay宏定义,保存(可以跳过这步)
5.进入/usr/src/redhat/SPEC,修改kernel-xxx.spec
将开头改成类似下面:
%define buildup 1
%define buildsmp 0
%define buildBOOT 0
%define buildbigmem 0
%define buildjensen 0
这样就表示只rebuild单CPU版本,其他什么bigmem支持,smp支持版本都通通不做(这些版本一般没有用上),这样会缩短编译时间
6./usr/src/redhat/SPEC下,
rpmbuild -bb kernel-xxx.spec --target=i386(生成i386体系内核)
rpmbuild -bb kernel-xxx.spec --target=i586(生成i586体系内核)
rpmbuild -bb kernel-xxx.spec --target=athlon(生成athlon体系内核)
rpmbuild -ba kernel-xxx.spec --target=i686(生成i686体系内核)
7.生成的内核可以在/usr/src/redhat/RPMS目录下的各个分目录里得到
config里已经指定了体系了,rpmbuild时还有必要再用--target=吗?不是太明白
页: 1 [2]
查看完整版本: 内核特别版是如何制作的?