我的目标是在 Kali Linux(带有定制的 Debian Sid 内核的 Debian Wheezy 稳定发行版)上玩 Team Fortress 2,但由于以下图形故障而无法玩:
- 糟糕的深色纹理
- FPS 非常低
- 低亮度
- 训练视频上的绿色纹理
- 纹理上的丑陋颗粒效果
经过大量研究后的解决方案是编译高于 8.0.5 的较新版本的 Mesa。我使用了 Debian 的 Mesa 维护者制作的“官方”指南:
https://lists.debian.org/debian-x/2013/03/msg00014.html
但我现在陷入了 ./configure 过程,因为它说 libdrm_nouveau 应该至少是 2.4.33,而 dpkg 报告我版本是 2.4.40。所以问题是:
有没有人设法克服这个版本问题,然后完成完整的构建或安装过程?
我有同样的问题:stackoverflow.com/questions/20827233/installing-mesa-10-on-debian,但由于我使用 Mesa 9.0.3,我遇到了这个问题,而不是 libdrm-intel 的问题。
这是我的电脑:
- 酷睿 I5,HD 3000 和 GT 540M
- Kali Linux 1.0.9 更新
- 内核 3.14 i686-pae 与 nvidia 331.67 内核模块
- bumblebee-nvidia 通过 wheezy-backports 存储库安装
我的步骤:
。/配置
以及制作错误报告:
checking for NOUVEAU... no
configure: error: Package requirements (libdrm_nouveau >= 2.4.33) were not met:
Requested 'libdrm_nouveau >= 2.4.33' but version of libdrm_nouveau is 0.6
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables NOUVEAU_CFLAGS
and NOUVEAU_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
这是“dpkg -l | grep libdrm”的结果:
ii libdrm-dev 2.4.40-1~deb7u2 i386 Userspace interface to kernel DRM services -- development files
ii libdrm-intel1:i386 2.4.40-1~deb7u2 i386 Userspace interface to intel-specific kernel DRM services -- runtime
ii libdrm-nouveau1a:i386 2.4.40-1~deb7u2 i386 Userspace interface to nouveau-specific kernel DRM services -- runtime
ii libdrm-radeon1:i386 2.4.40-1~deb7u2 i386 Userspace interface to radeon-specific kernel DRM services -- runtime
ii libdrm2:i386 2.4.40-1~deb7u2 i386 Userspace interface to kernel DRM services -- runtime
即使我使用 Kali Linux,我正在使用的每个软件包在 Debian 7.6 中都完全相同(使用虚拟机检查的版本)。
我还成功编译了 Mesa 10.0.5 并完成了教程。我没有使用后者中使用的路径进行导出,而是使用了我的正确指向库的路径。但我仍然遇到问题。
我的步骤是:
# autoreconf -vfi
# ./configure --prefix=/usr --enable-driglx-direct --enable-gles1 --enable-gles2 --enable-glx-tls --with-dri-driverdir=/usr/lib/dri --with-egl-platforms='drm x11' --with-dri-drivers=i965
# make
# checkinstall
此外,我没有安装mesa-common-dev,因为它与新安装的Mesa冲突。我也没有按照建议制作“mv lib/gallium/* lib/”,因为我的 GPU 是 Intel 的。在进行检查时,我对比了一下,所以看起来它不起作用:
# export LIBGL_DRIVERS_PATH=/usr/lib/dri
libGL: OpenDriver: trying /usr/lib/dri/tls/i965_dri.so
libGL: OpenDriver: trying /usr/lib/dri/i965_dri.so
libGL error: unable to load driver: i965_dri.so
libGL: OpenDriver: trying /usr/lib/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/dri/swrast_dri.so
# export LD_LIBRARY_PATH=/usr/lib
libglapi.so.0 => /home/user/Data/Mesa-10.0.5/src/mapi/shared-glapi/.libs/libglapi.so.0 (0xb772c000)
# export EGL_DRIVERS_PATH=/usr/lib
# EGL_LOG_LEVEL=debug es2_info 2>&1 >/dev/null | grep '\.so'
#
最后一次测试没有返回任何结果,这让事情变得更加奇怪。即使我完全遵循了指南,它仍然不起作用,是否有什么隐含的内容是我没有注意到的?