Nvidia symlinks and LD_32_LIBRARY_PATH

Jan Henrik Sylvester me at janh.de
Wed Feb 22 15:56:29 UTC 2017


On amd64, I have emulators/wine-devel installed into /usr/compat/i386/ 
together with x11/nvidia-driver. Calling wine with LD_32_LIBRARY_PATH, 
OpenGL in Windows applications used to just work.

After the change to libmap.conf, it does not work anymore.

I wonder, if the symlinks are really correct:

libGL.so -> libGL.so.1.2.0
libGL.so.1 -> libGL.so.1.2.0
libGL.so.1.2.0 [original libGL]
libGL-NVIDIA.so -> libGL.so.1
libGL-NVIDIA.so.1 [NVIDIA libGL]

Why does libGL-NVIDIA.so point to the original libGL and not the NVIDIA 
one? Does the etc/libmap.d/nvidia.conf correct this by mapping libGL.so 
to libGL-NVIDIA.so, which points to libGL.so.1, which in turn is mapped 
to libGL-NVIDIA.so.1? Is there a reason for this?

What do I have to do for the mapping to also cover the driver from the 
LD_32_LIBRARY_PATH?

The mapping does not seem to be used, because if I make libGL.so.1.2.0 
in the LD_32_LIBRARY_PATH a symlink to libGL-NVIDIA.so.1 (and the same 
for GLESvs2 and EGL), OpenGL works for Windows applications, again.

I know that there is emulators/i386-wine-devel, but having a complete 
/usr/compat/i386/ used to work well and potentially other 32bit only 
ports could use OpenGL, too.

Cheers,
Jan Henrik


More information about the freebsd-x11 mailing list