SimpleDirectMediaLayer.jl icon indicating copy to clipboard operation
SimpleDirectMediaLayer.jl copied to clipboard

libGL error: MESA-LOADER

Open wdevore opened this issue 5 years ago • 8 comments

I just switched from Pop!_OS 19.04 to 19.10 -- A linux distro based on Ubuntu. Everything was working under 19.04 using Julia 1.3.1

I have installed all the sdl libs and devs (img,ttf etc.) and I am running Julia 1.3.1. I installed and tested the SDL examples and even tested Go's sdl bindings and everything works fine. The error I get with Julia is:

libGL error: MESA-LOADER: failed to open radeonsi (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: radeonsi
libGL error: MESA-LOADER: failed to open radeonsi (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: radeonsi
libGL error: MESA-LOADER: failed to open swrast (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: swrast
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  6 (X_GLXIsDirect)
  Serial number of failed request:  110
  Current serial number in output stream:  109

Note: the build.log file is empty.

Any ideas what is going on? Is there something new that needs to be added to the julia sdl build script or something? Does the julia bindings need to bind to something else?

Thanks.

wdevore avatar Jan 19 '20 19:01 wdevore

Looks like OpenGL is looking for an AMD gpu driver and cannot find it. Maybe try to (re)install it. If you google the error it seems fairly common :

https://www.guyrutenberg.com/2019/10/08/libgl-error-unable-to-load-driver-radeonsi_dri-so/

jonathanBieler avatar Jan 20 '20 16:01 jonathanBieler

Looks like OpenGL is looking for an AMD gpu driver and cannot find it. Maybe try to (re)install it. If you google the error it seems fairly common :

https://www.guyrutenberg.com/2019/10/08/libgl-error-unable-to-load-driver-radeonsi_dri-so/

Yeah that is the googling I did. I'm a bit leary to play with links and reinstalling drivers.

I did run the find tool as it mentioned and I do have the mesa drivers. I noticed that the julia side is looking for /usr/lib/dri and mine seem to be:

>apt list |grep -i libgl1

libgl1-mesa-dev/eoan,now 19.2.1-1ubuntu1 amd64 [installed,automatic]
libgl1-mesa-dev/eoan 19.2.1-1ubuntu1 i386
libgl1-mesa-dri/eoan,now 19.2.1-1ubuntu1 amd64 [installed,automatic]
libgl1-mesa-dri/eoan 19.2.1-1ubuntu1 i386
libgl1-mesa-glx/eoan 19.2.1-1ubuntu1 amd64
libgl1-mesa-glx/eoan 19.2.1-1ubuntu1 i386
libgl1/eoan,now 1.1.1-0ubuntu1 amd64 [installed,automatic]
libgl1/eoan 1.1.1-0ubuntu1 i386

Is there something in the julia scripts looking at a different locations?

Thanks for the tip.

wdevore avatar Jan 20 '20 21:01 wdevore

Can you try with the master of this package now? We have changed how we build the binaries in the last day or so.

aviks avatar Jan 27 '20 02:01 aviks

Unsure if this is a separate issue, but I get the following on Ubuntu 20.04 with Julia 1.5.2:

julia> using SimpleDirectMediaLayer

julia> SDL = SimpleDirectMediaLayer
SimpleDirectMediaLayer

julia> SDL.Init(SDL.INIT_EVERYTHING)
libGL error: MESA-LOADER: failed to open iris (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open iris (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open swrast (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: swrast
X Error:  GLXBadContext
  Request Major code 152 (GLX)
  Request Minor code 6 ()
  Error Serial #103
  Current Serial #102

...then the REPL crashes and exits.

I do in fact have both an iris_dri.so and a swrast.so in /usr/lib/x86_64-linux-gnu/dri. I also have no problem running PySDL2.

jhigginbotham64 avatar Nov 24 '20 13:11 jhigginbotham64

The internet suggests LIBGL_DEBUG=verbose might provide some more information.

Also can you double check what version of this package you have available in your environment?

aviks avatar Nov 24 '20 14:11 aviks

Thanks, here you go. Looks like it's on the latest version (v0.2.1) of this package.

Seems like /home/jhigginbotham64/Desktop/julia/JuliaPro-1.5.2-1/Julia/bin/../lib/julia/libstdc++.so.6: version 'GLIBCXX_3.4.26' not found (required by /usr/lib/x86_64-linux-gnu/libLLVM-10.so.1) is the root of the problem, but I have no idea what that means.

jhigginbotham64:~ $ LIBGL_DEBUG=verbose julia -q
 Activating environment at `~/.julia/environments/JuliaPro_v1.5.2-1/Project.toml`
(@JuliaPro_v1.5.2-1) pkg> status SimpleDirectMediaLayer
Status `~/.julia/environments/JuliaPro_v1.5.2-1/Project.toml`
  [98e33af6] SimpleDirectMediaLayer v0.2.1

julia> using SimpleDirectMediaLayer

julia> SimpleDirectMediaLayer.Init(SimpleDirectMediaLayer.INIT_VIDEO)
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/jhigginbotham64/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/jhigginbotham64/.drirc: No such file or directory.
libGL: pci id for fd 21: 8086:591b, driver iris
libGL: MESA-LOADER: failed to open /usr/lib/x86_64-linux-gnu/dri/iris_dri.so: /home/jhigginbotham64/Desktop/julia/JuliaPro-1.5.2-1/Julia/bin/../lib/julia/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /usr/lib/x86_64-linux-gnu/libLLVM-10.so.1)
libGL: MESA-LOADER: failed to open \$${ORIGIN}/dri/iris_dri.so: \$${ORIGIN}/dri/iris_dri.so: cannot open shared object file: No such file or directory
libGL: MESA-LOADER: failed to open /usr/lib/dri/iris_dri.so: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory
libGL error: MESA-LOADER: failed to open iris (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: iris
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/jhigginbotham64/.drirc: No such file or directory.
libGL: pci id for fd 21: 8086:591b, driver iris
libGL: MESA-LOADER: failed to open /usr/lib/x86_64-linux-gnu/dri/iris_dri.so: /home/jhigginbotham64/Desktop/julia/JuliaPro-1.5.2-1/Julia/bin/../lib/julia/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /usr/lib/x86_64-linux-gnu/libLLVM-10.so.1)
libGL: MESA-LOADER: failed to open \$${ORIGIN}/dri/iris_dri.so: \$${ORIGIN}/dri/iris_dri.so: cannot open shared object file: No such file or directory
libGL: MESA-LOADER: failed to open /usr/lib/dri/iris_dri.so: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory
libGL error: MESA-LOADER: failed to open iris (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: iris
libGL: MESA-LOADER: failed to open /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so: /home/jhigginbotham64/Desktop/julia/JuliaPro-1.5.2-1/Julia/bin/../lib/julia/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /usr/lib/x86_64-linux-gnu/libLLVM-10.so.1)
libGL: MESA-LOADER: failed to open \$${ORIGIN}/dri/swrast_dri.so: \$${ORIGIN}/dri/swrast_dri.so: cannot open shared object file: No such file or directory
libGL: MESA-LOADER: failed to open /usr/lib/dri/swrast_dri.so: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory
libGL error: MESA-LOADER: failed to open swrast (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: swrast
X Error:  GLXBadContext
  Request Major code 152 (GLX)
  Request Minor code 6 ()
  Error Serial #103
  Current Serial #102

jhigginbotham64 avatar Nov 24 '20 15:11 jhigginbotham64

Well I started off not knowing what it meant, but pasting it into DuckDuckGo led me to https://github.com/JuliaLang/julia/issues/34276. The workaround seems to be working for me.

jhigginbotham64 avatar Nov 24 '20 15:11 jhigginbotham64

Well I started off not knowing what it meant, but pasting it into DuckDuckGo led me to JuliaLang/julia#34276. The workaround seems to be working for me.

Thank you so much! I hope they fix this.

albinahlback avatar Jan 11 '21 23:01 albinahlback

This issue should probably be closed now.

aviks avatar Sep 24 '22 14:09 aviks