声明,下面的方法不是我原创,是借鉴的改写!谢谢 www.linuxfans.org的hForever兄弟!
注:要编译内核的,新功能未正常运行前,先不要删除旧内核!
首先,打补丁:
http://dev.gentoo.org/~spock/projects/vesafb-tng/archive/
我用的是2.4.29的内核,所以我用的是:patch-2.4.x-vesafb-rrc.tar.gz
然后,运行命令:
cp patch-2.4.x-vesafb-rrc.tar.gz /usr/src (我把下载的补钉放在/usr/src目录下)。
tar xvzf patch-2.4.x-vesafb-rrc.tar.gz
(解压得到patch-2.4.x-vesafb-rrc目录,目录里面有一个patch-2.4.x-vesafb-rrc.bz2和一个README文件)。
cd /usr/src/linux (切换到linux内核源码目录)!
bzip2 -dc ../patch-2.4.x-vesafb-rrc/patch-2.4.x-vesafb-rrc.bz2 | patch -p1 (打补钉)!
chmod u+x scripts/vesa_modeline_gen.pl (让这个补钉脚本有运行的能力)!
scripts/vesa_modeline_gen.pl
(运行这个脚本,这是它会提示你根据你自己的情况输入Vertical sync、Horizontal sync、Pixel Clock这三个参数的值)!
注:如果你不知道这几个参数值,像我就用Xfree86 4.3自带的 “ xvidtune ”命令来查看这三个值!
总而言之,想办法找到这三个参数值!还有如果你和我一样也用“ xvidtune ”来查找的话,记住只是记录相应的参数值,千万别改任何地方,在“ xvidtune ”的运行提示说配置不正确可导致显示器over的!切记! :eek:
vi /arch/i386/boot/vesafb_modes.h (检查一下,这个头文件里的设置是不是符合你的要求!比如是不是存在640x480@85,800x600@85等等这样的行!否则重新运行脚本)!
检查无误后,make and install the kernel !
完成安装内核的工作后,配置一下/boot/gurb/grub.conf文件(以自己的系统为准,下面是仅供参考):
我的更改< kernel /boot/vmlinuz-2.4.29 ro root=/dev/hda3 vga=0x503>
附vga=xxx 数值对照表:
| 320x200 640x480 800x600 1024x768 1280x1024
----+-----------------------------------------------
256 | N/A 0x501 0x503 0x505 0x507
32k | 0x50D 0x510 0x513 0x516 0x519
64k | 0x50E 0x511 0x514 0x517 0x51A
16M | 0x50F 0x512 0x515 0x518 0x51B
Reboot 去看结果吧!  |