LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 6560|回复: 30

梦幻xgl - 之 驱动安装 与 最终实现

[复制链接]
发表于 2006-7-1 02:49:41 | 显示全部楼层 |阅读模式
因yast而suse,因xgl而gnome。

参考LinuxSir.Org上的诸多文章终于在自己的suse10.1+gnome上实现了xgl。
其中根据自己系统差异修正了一些小错误,一并总结过程记录如下:

一、安装显卡驱动

xgl 主要是靠OpenGL实现了真是3D的桌面环境,因此非常依赖显卡驱动的OpenGL能力。就目前主流显卡nvida与ati来说,理论上因该是ati的 OpenGL能力更加出众,所以目前主流ati显卡实现xgl应该没有任何问题。由于xgl还处于实验阶段,非常不稳定,于其他应用程序兼容性还有待进一步提高;即使相同品牌的显卡由于驱动程序的不同也会导致实验失败的结果。我的机器配置见blog左侧,驱动版本fglrx_6_9_0_SUSE101- 8.25.18-1;在suse上没有安装显卡驱动,并且打开3D加速的话,那就别梦想xgl了。

显卡驱动安装步骤:

1、从ati官方下载对应显卡的Linux驱动程序:
ati-driver-installer-8.25.18-x86.run
不要急着就执行,这是一个build包,最好根据Linux版本build出对应的rpm包之后,再通过rpm安装。直接运行基本上不能自动识别出Linux的发行版本。

2、生成驱动程序的rpm包
打开终端
#./ati-driver-installer-8.25.18-x86.run --buildpkg SuSE/SUSE101-IA32
说明:
--buildpkg是生成包选项,想看其他选项的可以用--help;
SuSE/SUSE101-IA32是对应平台,SuSE/SUSE101表示suse10.1的oss版,SuSE/SUSE100表示suse10的oss版;
IA32表示32位,若机器是AMD64位的则是SuSE/SUSE101-AMD64;

3、安装rpm包
按照上面步骤来作,会在目录下生成一个名字为fglrx_6_9_0_SUSE101-8.25.18-1.i386.rpm的rpm包。然后执行
#rpm -ivh fglrx_6_9_0_SUSE101-8.25.18-1.i386.rpm
有的系统可能会提示包冲突,或者缺少依赖包。我的解决方法是:仔细查看rpm的输出信息,找到冲突或者依赖的是哪个包文件;然后Google一下看看有什么解决办法,不过一般只要下载安装对应rpm包即可。如无任何问题,请跳过下面一节。

在我的系统上,rpm之后提示缺少/usr/lib/libexpat.so.0的库文件。我找到对应位置之后发现存在libexpat.so、 libexpat.so.1、等文件,其中libexpat.so.1是链接到libexpat.so文件上的,这就说明我系统里面已经有expat这个库了,产生冲突的原因多半是版本问题(suse10.1里面的expat版本是2.0.0-11,而显卡驱动需要的版本是1.95.0-1)。实验自己链接一个libexpat.so.0文件,在试rpm -ivh显卡驱动,失败。只好找了一个强行安装,如果你们找不到可以在这里下载。然后执行
#rpm -ivh --force expat-1.95.0-1.i386.rpm
再执行上面安装显卡驱动的命令即可安全通过。

4、配置驱动
终端当中直接执行(有些文章一般要求init 3之后再执行,我自己试验没有必要)
#aticonfig --initial --input=/etc/X11/xorg.conf
理论上已经行了,为了保险,再执行
#sax2 -r -m 0=fglrx
此时会启动sax2配置界面,直接保存,不用测试,测试好像会死的。
然后
#reboot

5、检查配置
重启之后,在yast开sax2看显卡驱动是否正确安装。特别要注意sax2下面的3D加速选项是否打开,这将决定了你是否能开启xgl。
如图:一般正确安装显卡驱动的话,显卡选项里面都会有些默认配置,只要有就行,千万不要乱改动!



注意红框部分为3D加速选项:



这是ati显卡安装过程,nvida显卡用户参考网上其他文章(关于nvida显卡驱动的文章很多,ati的比较少,哎~)。
 楼主| 发表于 2006-7-1 03:01:15 | 显示全部楼层

梦幻xgl - 之最终实现

上一篇文章我们已经把xgl最基础的部分做完了,下面我们就来做最激动人心的部分。

一、安装xgl和compiz包

xgl与compiz是实现超炫桌面的基础,要想安装首先打开yast,如果是普通用户会提示输入root密码,然后点击左侧的software(软件),再点击右侧的software management(软件管理)。如图:



搜索xgl,当结果出现在右侧时,勾选该包。



接着,搜索compiz包,出现结果的时候勾选该包。



注意:再安装以上两个包之前,确保你的系统里面已经安装make,gcc,kernel-source三个包,如果没有安装或者不确定的话,可以分别搜索三个包查看右侧结果是否已经勾选;如若没有勾选的话,选择上它们。





然后点击右下角的accept(接受),开始安装。此时一般会提示你插入光盘,如果没有安装光盘的话,需要先添加安装源。

二、编辑配置文件

对于已经安装好3D加速驱动程序的ati显卡用户来说,使用你们喜欢的编辑器打开
/etc/X11/xorg.conf
文件进行编辑。
在Section "Device"一节,添加一行
Option "KernelModuleParm" "agplock=0"
还需要检查该小节里面是否有下面一行
Option "UseInternalAGPGART" "no"
一般安装好显卡驱动的应该都会有该行,唯一不同的是"yes"或"no"的值问题;确保这个值是"no";如果你的系统该项值为"yes",请修改成"no"。如图:



另外还需要注意的是这个Device[0],一般按照上篇文章安装显卡驱动的话,方括号里面应该是0,不需要做任何改动。
如果你的系统该项方括号里面是1的话,则还需要编辑
/etc/opt/gnome/gdm/gdm.conf
文件,把里面0=standard那行前面加上#号,下面1=standard的前面去掉#号;意思就是开启1号显示设备,关闭0号显示设备。

三、配置Gnome来运行xgl

登录gnome,打开终端运行命令
#gnome-session-properties

如果不愿意敲命令,还可以点击
Desktop -> Control Center -> Session
桌面 -> 控制中心 -> 会话(在系统那个分组里面)

见到弹出的界面之后,点击starup programs(启动程序)选项卡。



点击Add(添加)按钮,在对话框里面输入
compiz --replace gconf
然后点击OK。



再此点击添加按钮,在对话框里面输入
gnome-window-decorator
点击确定按钮



你将看到如下图的界面。



关闭Session对话框。
回到终端控制器,输入如下命令。
#gconf-editor
此时会弹出Configuration Editor(配置编辑器)窗口。



在左侧面板,按照如下次序依次打开每个折叠项。
apps -> compiz -> general -> allscreens -> options
打开之后,在右侧面板双击active_plugins项。我们要确保所有compiz插件设置并加载。你将会看到如下图一样的画面。



如果其中一些项目没出现的话,则需要手动添加进去。
此时我们确定所有插件都已经设置并且加载之后,注销(logout),重新登录gnome。

接着,打开gnome控制中心,选择Desktop Effects Setting。



然后点击Enable 3D Desktop。



四、KDE用户使用xgl

以上所有配置基本上都是在gnome下完成的。
对于KDE用户而言,依照上面的各个步骤做完;再确保你能够正常的登录进入KDE环境。

接下来,我们将建立一个配置文件以便在X启动的时候让KDE知道加载compiz窗口管理器。
打开编辑器,输入如下代码:
  1. [Desktop Entry]
  2. Encoding=UTF-8
  3. Exec=compiz --replace decoration wobbly fade minimize cube rotate zoom scale move resize place switcher & gnome-window-decorator &
  4. GenericName[en_US]=
  5. StartupNotify=false
  6. Terminal=false
  7. TerminalOptions=
  8. Type=Application
  9. X-KDE-autostart-after=kdesktop
复制代码
以文件名compiz.desktop保存到以下路径:
/home/user/.kde/Autostart
其中user是你的用户名,一旦你作完之后,注销KDE,重新登录进入KDE,你将会发现不可思议的事情。

什么事情好像都没有发生嘛,先不要着急,按住alt键+鼠标左键拖动窗口看看是不是有特殊小过了?嘿嘿,水印一样。再ctrl+alt+鼠标左键拖动看看~

到这里,xgl的配置就基本结束了,如果没有建议reboot机器再看看效果。特殊按键的配置,可以再Desktop Effects Setting的选项卡里面设置。默认设置如下:
  1. Window Operations
  2. Move Window         ALT + Left-Click and Drag
  3. Move Window - Snap to screen         CTRL + ALT + Left-Click and Drag
  4. Resize Window         ALT + Right-Click and Drag
  5. Switch Windows         ALT + TAB
  6. Switch Windows (Scale Mode)         F11
  7. Wobbly Windows         Left-Click Window and Drag
  8. Translucency         ALT + Mouse Up / Mouse Down
  9. Cube
  10. Rotate Cube - Next Desktop         CTRL + ALT + Left or Right Arrow
  11. Rotate Cube - Next Desktop         Move Mouse cursor to extreme edge of desktop
  12. Rotate Cube - Take Active Window         CTRL + SHIFT + ALT + Left or Right Arrow
  13. Manually Rotate Cube         CTRL + SHIFT + Left-Click on Desktop and Drag
  14. Zoom
  15. Zoom Once         Super-Key (Windows Key)
  16. Zoom In Manually         Mouse Wheel Scroll Up + Super-Key (Windows Key)
  17. Zoom Out Manually         Mouse Wheel Scroll Down + Super-Key (Windows Key)
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-1 03:03:38 | 显示全部楼层

xgl - show!

在本人blog
http://cuitggyy.cublog.cn
相册里面有些xgl桌面效果的贴图,大家可以看看。
在这里我只放两张图片以嗣读者。



回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-1 03:27:11 | 显示全部楼层
另外说明一些注意事项:

如果想真的使用xgl,建议一定要用gdm作为窗口登录管理器。kdm不是不行,而是不稳定,多半就是黑屏,彻底完蛋了,改什么配置都不管用的。我把我的用户目录都删干净了还是不行。。。
10.1的kde本来就不稳定,50%的几率崩溃,真的不如gnome。

xgl下使用mplayer时,在首选项里使用支持OpenGL的X11输出,否则不能正常显示,还有看电影千万不要拖拉屏幕改变大小或全屏,准死!我的机子上是这样的。

xgl与java严重冲突,本版已经有解决办法,自己搜索xgl java关键字即可

xgl对于一些弹出式窗口有时会失去响应,仅仅是该窗口的,kill也kill不掉,可以使用解决java程序的办法,先关闭compiz,再打开。

操作过程如下:
  1. # metacity --replace gconf
  2. # compiz --sm-client-id default0 gconf
复制代码

注意,那个compiz命令的参数不同系统可能不同,建议先
ps aux | grep compiz
看看到底是什么,再metacity --replace gconf
再执行刚才ps看到的输出即可

java程序运行前先metacity,运行之后再compiz即可。

不然你看看效果就知道了~
回复 支持 反对

使用道具 举报

发表于 2006-7-1 07:36:16 | 显示全部楼层
三、配置Gnome来运行xgl
一直到“重新登陆gnome”
10.1的话是完全没有必要的
点enable desktop effects都会自动实现
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-1 11:20:41 | 显示全部楼层
三、配置Gnome来运行xgl
一直到“重新登陆gnome”
10.1的话是完全没有必要的
点enable desktop effects都会自动实现
如果是kdm做窗口管理器的话,直接enable不会有效果。
如果是gdm做窗口管理器的话,直接enable才会有效果。

为了保险起见,才写的,很多用户还不知道他们用的是kdm还是gdm !
回复 支持 反对

使用道具 举报

发表于 2006-7-1 12:56:09 | 显示全部楼层
正愁着呢,多谢分享
回复 支持 反对

使用道具 举报

发表于 2006-7-1 19:39:55 | 显示全部楼层
没装gdm,用kde下的xgl,稳定,木有死机现象,也没有特别设置过,
mplayer之类媒体播放都正常,特效也都正常
不过java问题确实有,比如jdev,打开不显示

我觉得没必要装gdm,反正我机器确实没问题,很稳定
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-1 21:06:27 | 显示全部楼层
没装gdm,用kde下的xgl,稳定,木有死机现象,也没有特别设置过,
mplayer之类媒体播放都正常,特效也都正常
不过java问题确实有,比如jdev,打开不显示

我觉得没必要装gdm,反正我机器确实没问题,很稳定
也许是因为xgl不支持我的显卡驱动所致,在控制中心->desktop effect setting上写着我的ati显卡驱动不在xgl的数据库内,也许就是因为这个!
而且我的kde动不动就崩溃,50%,重新装了好几次都是这样,希望是个体差异所致。
回复 支持 反对

使用道具 举报

发表于 2006-7-2 14:20:57 | 显示全部楼层
gnome-window-decorator   

我装了KDE,输入后没有反应,提示没有这个命令,但是在gnome里面就可以执行这个命令,我是默认安装的,没有删除别的东西,请问这是为什么?谢谢搂住
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表