基于 Debian 的发行版所需的 mesa 构建依赖项是什么?

基于 Debian 的发行版所需的 mesa 构建依赖项是什么?

我的目标是在 Kali Linux(带有定制的 Debian Sid 内核的 D​​ebian 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'
#

最后一次测试没有返回任何结果,这让事情变得更加奇怪。即使我完全遵循了指南,它仍然不起作用,是否有什么隐含的内容是我没有注意到的?

相关内容