|
 
- 帖子
- 1767
- 精华
- 0
- 威望
- 451
- 性别
- 男
|
1#
发表于 2008-4-18 07:48
| 只看该作者
最近刚放出了2.6.25内核,所以正好顺便学习下编译。。
将内核文件保存到/usr/src中
#在旧些的版本中编译内核前需要执行make mrproper命令,删除系统中存在的一些不正确的文件。
#较高版本的linux中第一次编译内核是不需要的。
step 1.
#cd /usr/src/Linux-2.6.25
#make mrproper
step 2.
启动内核编译工具。。
有三种选择
a.文本界面 make config
b.图形窗口界面 make Xconfig
c.命令行下图形界面(据说叫这个,看字面上明显是菜单模式。。) make xconfig
具体设置项目一看都明白,有windows的注意打开ntfs支持,一般内核默认不支持的。。
选项前面的方框中变为园点表示以模块方式添加进系统,为对号时表示直接编译到内核中
完成选择后注意命名保存退出。。。。。。
然后Load an Alternate Configuration File载入刚才配置
退出编译工具并保存
第一次运行时出现:
root@ww-laptop:/usr/src/linux-2.6.25# make xconfig
CHECK qt
*
* Unable to find the QT3 installation. Please make sure that
* the QT3 development package is correctly installed and
* either install pkg-config or set the QTDIR environment
* variable to the correct location.
*
make[1]: *** No rule to make target `scripts/kconfig/.tmp_qtcheck', needed by `scripts/kconfig/qconf.o'. Stop.
make: *** [xconfig] Error 2
提示需要安装qt3,用多利得装上,
重新运行make xconfig,一堆提示后出现下图
(好好选吧。。我这里默认很多东西amd与intel是同时被支持的,而且10G网卡也默认作为模块安装=_=')

step 3.
按照提示,运行
#make dep
生成各种相关文件
#make clean
确保所有文件处于最新版本
#make bzImage
生成内核。。我可以偷偷告诉你这文章里面很多字都是称生成内核的时候打的。。
结束时会提示生成内核的路径
Root device is (8, 1)
Setup is 11724 bytes (padded to 11776 bytes).
System is 1890 kB
Kernel: arch/x86/boot/bzImage is ready (#1)
root@ww-laptop:/usr/src/linux-2.6.25#
#make modules
编译所选择的模块
哦。。。。我花了一个半小时度过这一步。。。。。。
当然我承认CM1.5的cpu有点过时了。。
#make modules_install
这部很快的。。
#depmod -a
这也很快。。
严格说来,depmod -a命令和编译过程并没有关系,
它是生成模块间的依赖关系,这样你启动新内核之后,
使用modprobe命令加载模块时就能正确地定位模块。
至此内核编译完成了
#mkinitramfs -o /boot/initrd-2.6.265.img 2.6.25生成映像文件
如果提示找不到目录,那么就自己建立一个
#mkdir /lib/firmware/2.6.25
#cp /usr/src/linux-2.6.25/System.map /boot/System.map-2.6.25
#cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.4.18
以上这两个文件是我们刚才编译时新生成的。
修改/boot/grub/grub.conf
在启动项中加入新的内核
重新启动,选择新加入的启动项&祈祷。。。
至少这次我成功。。。。

哦。。进入系统后猛然发现。。编译时不小心把声卡驱动给取消了。。。。啊啊啊啊
[ 本帖最后由 wwfalcon 于 2008-4-18 07:55 编辑 ] |
本人已死,有事烧纸;小事招魂,大事挖坟。。。 |
|