<html><body><div style="font-family: times new roman, new york, times, serif; font-size: 12pt; color: #000000"><div>Hello mesa-users,<br><br>I am currently trying to link a program with the latest version of<br>mesa but the dynamic libraries are not found correctly at runtime.<br><br>I need to upgrade my OpenGL version (I want to test something with<br>compute shaders) and the libgl1-mesa-dev only gives me Mesa 10.5.2<br>(OpenGL 3.3). Thus I decided to compile the master branch of mesa and<br>link my program with the resulting libraries.<br><br>I am on a Ubuntu 14.04 machine (with a GeForce 8800 GTS graphic card).<br>I am on mesa commit ead7736: 'glsl_to_tgsi: don't use the negate<br>modifier in integer ops after bitcast'.<br>I compiled using the following commands:<br><br>sudo apt-get install g++ git valgrind python2.7 python-mako flex bison \<br>x11proto-dri2-dev x11proto-dri3-dev autoconf libtool \<br>libpthread-stubs0-dev x11proto-gl-dev libpciaccess-dev \<br>x11proto-present-dev libxcb1-dev libxcb-dri3-dev libxcb-present-dev \<br>libxshmfence-dev libxcb-dri2-0-dev libxi-dev libxdamage-dev xorg-dev \<br>libx11-xcb-dev libxcb-glx0-dev libudev-dev llvm-dev libva-dev<br>git clone git://anongit.freedesktop.org/git/mesa/mesa<br># The libdrm version provided by apt-get is not recent enough.<br>wget http://dri.freedesktop.org/libdrm/libdrm-2.4.68.tar.bz2<br>tar -xjf libdrm-2.4.68.tar.bz2<br>rm libdrm-2.4.68.tar.bz2<br>cd libdrm-2.4.68/<br>./configure<br>make<br>sudo make install<br>cd ../mesa<br>aclocal<br>autoconf<br>./autogen.sh<br>make -j 7<br># sudo make install<br># I have done the make install in a previous session, however due to<br># the dynamic libraries not working correctly, I ended up without a<br># working graphical session and thus have not done it this time.<br><br>I thus have the following in mesa/lib:<br>$ ls<br>gallium          libglapi.so.0.0.0      libGL.so.1<br>i915_dri.so      libGLESv1_CM.so        libGL.so.1.2.0<br>i965_dri.so      libGLESv1_CM.so.1      mesa_dri_drivers.so<br>libEGL.so        libGLESv1_CM.so.1.1.0  nouveau_vieux_dri.so<br>libEGL.so.1      libGLESv2.so           r200_dri.so<br>libEGL.so.1.0.0  libGLESv2.so.2         radeon_dri.so<br>libglapi.so      libGLESv2.so.2.0.0     swrast_dri.so<br>libglapi.so.0    libGL.so<br><br>When I am running a program with these libraries I have the following<br>errors:<br>$ LD_LIBRARY_PATH=~/Programs/mesa/lib/ LIBGL_DEBUG=verbose LIBGL_DRIVERS_PATH=~/Programs/mesa/lib glxinfo<br>libGL: OpenDriver: trying /home/remi/Programs/mesa/lib/nouveau_dri.so<br>libGL: dlopen /home/remi/Programs/mesa/lib/nouveau_dri.so failed (/home/remi/Programs/mesa/lib/nouveau_dri.so: cannot open shared object file: No such file or directory)<br>libGL error: unable to load driver: nouveau_dri.so<br>libGL error: driver pointer missing<br>libGL error: failed to load driver: nouveau<br>libGL: OpenDriver: trying /home/remi/Programs/mesa/lib/swrast_dri.so<br>libGL: Can't open configuration file /usr/local/etc/drirc: No such file or directory.<br>libGL: Can't open configuration file /home/remi/.drirc: No such file or directory.<br>display: :0  screen: 0<br>direct rendering: Yes<br>[...]<br>OpenGL renderer string: Software Rasterizer<br>OpenGL version string: 2.1 Mesa 12.1.0-devel (git-ead7736)<br>[...]<br><br>While I might be screwing up some paths here, I had the same errors in<br>my previous session where I did 'sudo make install'.<br><br>It is looking for 'nouveau_dri.so' which doesn't exist while<br>'nouveau_vieux_dri.so' exists. So I tried to add a symbolic link<br>'nouveau_dri.so -> nouveau_vieux_dri.so', which then gives:<br><br>libGL: OpenDriver: trying /home/remi/Programs/mesa/lib/nouveau_dri.so<br>libGL: driver does not expose __driDriverGetExtensions_nouveau(): /home/remi/Programs/mesa/lib/nouveau_dri.so: undefined symbol: __driDriverGetExtensions_nouveau<br>libGL error: core dri or dri2 extension not found<br>libGL error: failed to load driver: nouveau<br>[...]<br><br>Which is not surprising since it exposes<br>'__driDriverGetExtensions_nouveau_vieux()' and not<br>'__driDriverGetExtensions_nouveau()'.<br><br>Do you have any solution to make the latest mesa work on my computer?<br><br>Best regards,<br>Rémi</div></div></body></html>