LinuxSir.cn,穿越时空的Linuxsir!

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

ATI显卡装了fglrx_glx包以后提供的专用版本libGL能被apt里的其他package使用吗?

[复制链接]
发表于 2008-10-21 22:59:31 | 显示全部楼层 |阅读模式
我的Debian版本是lenny,显卡是ATI Radeon 3650,昨天装了AMD提供的non-free版本的ATI驱动,还有配套的软件包:fglrx-atieventsd fglrx-driver fglrx-source fglrx-kernel-2.6.26-1-686 fglrx-kernel-src fglrx-control  fglrx-amdcccle fglrx-glx。
其中fglrx-driver是驱动,只能支持2D,fglrx-source fglrx-kernel-2.6.26-1-686 fglrx-kernel-src是内核模块相关的包,装了这些才能支持3D加速。其他的是些检测管理显卡的工具,都没有大问题。但是fglrx-glx是ATI提供的是libGL的一个non-free版本。不装这个包的话fgl_glxgears测试fps报错:
X Error of failed request:  GLXUnsupportedPrivateRequest
  Major opcode of failed request:  143 (GLX)
  Minor opcode of failed request:  16 (X_GLXVendorPrivate)
  Serial number of failed request:  40
  Current serial number in output stream:  41
----------------
装了就没问题。
但今天我想要装个2D的游戏试试显卡驱动,从debian/sid下了个源码包smc-1.4-2,在安装fglrx-glx的情况下dpkg-buildpackage -rfakeroot -uc -b报错。
其中一行是
diversion by fglrx-glx to: /usr/lib/fglrx/diversions/libGL.so.1.2
---------------
把fglrx-glx删掉就能顺利生成deb包,安装也没问题(其他依赖性都事先解决了)。

Google之,发现一个页面:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=469052
里面有一个回复:
This behaviour is intentional.

No package should be expected to build againt ATI's private libGL.
If you need to build a package using libGL, then remove fglrx-glx, or use a
clean chroot..
意思是这个包本来就不打算给公共领域的程序包使用,这个错误提示也是故意为之。
可是他却把公共域的package给diversion了,就是把其他包提供的libGL.so备份后覆盖了,然后只在deb包管理系统里留下个备忘录。

我就郁闷了,不知道到底该选择哪个版本的libGL。删了fglrx-glx吧,也不知道fglrx版本的显卡驱动能不能和公共域的libGL兼容。有谁用ATI的显卡的说说你们是怎么解决这个问题的,另外给我介绍一个能运行的3D或2D游戏给我,我继续测试。
发表于 2008-10-23 16:00:40 | 显示全部楼层
我编译svn版的mplayer也是这个问题
回复 支持 反对

使用道具 举报

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

本版积分规则

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