My target is about playing Team Fortress 2 on Kali Linux (a Debian Wheezy stable distribution with customized Debian Sid kernel) since a long time now, but couldn't because of the following graphical glitches:
- Bad dark textures
- Very low FPS
- Low brightness
- Green texture on training video
- Ugly grain effect on textures
The solution after a lot of research was to compile a newer version of Mesa over 8.0.5. I used the "official" guide made by the Debian's Mesa maintainer:
https://lists.debian.org/debian-x/2013/03/msg00014.html
But I'm now stuck at the ./configure process, because it says that libdrm_nouveau should be at least 2.4.33 while dpkg reports me that the version is 2.4.40. So the question is:
Did anyone managed to overcome this version problem, then complete the full building or installation process ?
I have the same problem than: stackoverflow.com/questions/20827233/installing-mesa-10-on-debian, but since I use Mesa 9.0.3, I meet that problem instead of the libdrm-intel's one.
Here's my computer:
- Core I5 with HD 3000 and GT 540M
- Kali Linux 1.0.9 updated
- Kernel 3.14 i686-pae with nvidia 331.67 kernel modules
- bumblebee-nvidia installed through wheezy-backports repository
My steps:
./configure
And the make bug report:
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.
Here's the result of "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
Even if I use Kali Linux, every packages I'm working are exactly the same in Debian 7.6 (Versions checked with a VM).
I also managed to compile Mesa 10.0.5 and finished the tutorial. Instead of using the paths used in this latter for the exports,I used mine's that point correctly to the libraries. But I'm still hitting on problems.
My steps were:
# 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
Furtherore, I didn't installed mesa-common-dev since it conflicts with the newly installed Mesa. I also didn't made 'mv lib/gallium/* lib/' as suggested since my GPU is an Intel one. While doing the checkings, I faced this in comparison, so it looks like it didn't worked:
# 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'
#
The last test returned nothing, making it even weird. Even if I perfectly followed the guide, it's still not working, is there something implicitly said that I didn't noticed ?
apt-cache showsrc libdrm-nouveau2
. TheBuild-Depends
line. – Faheem Mitha Oct 18 '14 at 01:25dpkg -l | grep libdrm
into your question? – Faheem Mitha Oct 18 '14 at 01:30Is there anything I should consider before naively follow the instructions on the README file ? It just say ./configure -> make -> make install (I wil use checkinstall). Oh, do I need to delete the old libdrm packages ?
– X.LINK Oct 18 '14 at 02:42I do agree that installing a deb is better. But the problem is I have no choice since It means fetching it from Jessie. In consequence a lot of installed dependencies from there must be done and means breakages and a lot more unstability. How do you recompile on the system ?
– X.LINK Oct 18 '14 at 14:58libdrm-nouveau
is 2.4.40, but configure is seeing 0.6.You then installed a locally compiled version. If any of this is incorrect, please say so. Well, as I said, installing a locally compiled version is not a good way to address the problem. You should replace it with a fixed binary. Having said that, you appear to have exactly the same version on your system as I do on Debian wheezy. Some things to note: (1) avoid installing locally compiled packages into your system as far as possible. – Faheem Mitha Oct 18 '14 at 19:25libdrm-nouveau
, but with Mesa, and was fixed in 9.1.3, according to @Braiam. I haven't checked that. Anyway, remove local installs, and backport Mesa 10 from testing/unstable. If you want help, post another question. – Faheem Mitha Oct 18 '14 at 20:10