|
发表于 2010-3-2 20:17:35
|
显示全部楼层
终于重现了这个问题,具体过程是这样的:
我emerge pearpc (Mac OS模拟器)时,提示内核没有TUN/TAP选项。于是在内核中选上,顺便去掉了/dev/AGPArt选项(因为我的显卡是G41集成,有人说这是PCI-E的)。用新内核启动后,仍无法编译pearpc,放弃。但无法进入X(几分钟前还是正常的),提示没有AGP模块。重新加上AGP,去掉TUN/TAP后,进入X,firefox变慢了。如果正在运行firefox再运行其它程序,其它程序也变慢。
难道是选TUN/TAP时自动选了其它内核选项?于是我又用先前备份的.config重新编译内核,问题依旧。重新emerge mozilla-firefox,竟然失败;
#emerge --unmerge mozilla-firefox && emerge mozilla-firefox
失败,提示原来有/usr/lib/mozilla/plugins。
#rm -rf /usr/lib/mozilla/plugins
#rm -rf /usr/lib/mozilla-firefox/plugins
#emerge mozilla-firefox
成功。
但问题仍旧。
$ glxinfo | grep render 输出:
Opengl renderer string: Software .......
原来的硬件加速没有了,于是
# emerge xf86-video-intel (我的显卡是intel的)
失败。
是不是内核有问题?没有make clean ?
# cd /usr/src/linux
# make clean
# make && make modules_install
# eselect opengl set xorg-x11 (N卡的话用nvidia代替xorg-x11)
启动新内核,进入X,硬件加速有了。firefox的问题消失。(我的/etc/make.conf中的USE变量有opengl)
==========
另外,我emerge --unmerge xf86-video-intel后再emerge xf86-video-intel,竟然又失败,提示没有/usr/include/X11/extensions/shmstr.h
真是奇怪。我从来没动过/usr/include/,进都没进去过。难道是emerge gearpc的时候,被删除了?
于是找啊找,发现x11-proto/xextproto,于是emerge xextproto,又失败,提示在/usr/include/X11/extensions/中有另一组头文件。
emerge --unmerge xextproto && emerge xextproto,失败。
rm -rf /usr/include/X11/extensions/
emerge xextproto,成功;shmstr.h有了。
emerge xf86-video-intel,失败,又缺失/usr/include/X11/extensions/XI.h
emerge libXi, 失败,又缺失头文件。看来不行了,时间也到6:00了,下班。等回家把家里那台的/usr/include/X11/extensions/复制去再说。
==
死活想不明白,这是怎么回事?特别是头文件会丢失。 |
|