[Nix-dev] dlopen and mesa-likes

Mateusz Kowalczyk fuuzetsu at fuuzetsu.co.uk
Sat Aug 9 00:57:16 CEST 2014


On 08/09/2014 12:18 AM, Vladimír Čunát wrote:
> On 08/08/2014 11:30 PM, Mateusz Kowalczyk wrote:
>> Unfortunately /run/opengl-driver/lib contains neither libEGL.so nor
>> libGLESv2.so. Do you know how to proceed? Does this means that there is
>> just no support for these things from nVidia and I need another driver?
> 
> Ah, that's an issue not solved yet, I didn't realize that. I believe it 
> should work to have EGL and GLES from our mesa_noglu. IIRC those are 
> relatively thin wrappers around libGL, which will get chosen from 
> /run/opengl-driver* due to LD_LIBRARY_PATH (BTW this variable is why 
> often dlopening libGL works fine without any patching).
> 
>> Out of interest, is there a solution which would work both on NixOS and
>> on setups with just nixpkgs?
> 
> I don't think so. Driver is an OS thing, and I believe libGL 
> implementation needs to be driver-dependent.
> 
> 
> Vlada
> 

Unfortunately using mesa_noglu (or mesa) doesn't work:

libEGL warning: DRI2: failed to authenticate
libEGL warning: DRI2: failed to open swrast (search paths
/run/opengl-driver/lib/dri)
-!- EGL is not or could not be initialized
-!- Could not initialize any context

The last two lines are from the software itself. I just fetched the
latest nVidia blob and after struggling for a bit I manage to unpack it
with the intuitive ‘tail -n +1126 NVIDIA-Linux-x86_64-340.24.run | xz -d
| tar xvf -’ command. I can clearly see that libGLESv2.so and libEGL.so
are in fact provided so it seems to me that whoever is packaging the
nVidia driver has made an oversight.



-- 
Mateusz K.


More information about the nix-dev mailing list