Comments (12)
@yakir12, would you mind trying the following?
LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6 julia
from glfw.jl.
That sounds like you have no gpu drivers installed or not not installed them correctly ;)
Make sure to install nvidia drivers & make sure that glxinfo | grep OpenGL
spits out OpenGL > 3.3
from glfw.jl.
I think the correct drivers are already installed:
~$ ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:05.0/0000:02:00.0 ==
modalias : pci:v000010DEd0000042Fsv000010DEsd00000492bc03sc00i00
vendor : NVIDIA Corporation
model : G86 [Quadro NVS 290]
driver : nvidia-340 - distro non-free recommended
driver : xserver-xorg-video-nouveau - distro free builtin
~$ sudo apt-get install nvidia-340
Reading package lists... Done
Building dependency tree
Reading state information... Done
nvidia-340 is already the newest version (340.108-0ubuntu2).
0 upgraded, 0 newly installed, 0 to remove and 8 not upgraded.
and I can see that OpenGL is ≥ 3.3 (but not > 3.3):
glxinfo | grep "OpenGL version"
OpenGL version string: 3.3.0 NVIDIA 340.108
yet, I still run into the same problem:
(@v1.5) pkg> build GLMakie
Building ModernGL → `~/.julia/packages/ModernGL/rVuW2/deps/build.log`
Building FFTW ────→ `~/.julia/packages/FFTW/DMUbN/deps/build.log`
Building GLMakie ─→ `~/.julia/packages/GLMakie/cLuEl/deps/build.log`
┌ Error: Error building `GLMakie`:
│ libGL error: No matching fbConfigs or visuals found
│ libGL error: failed to load driver: swrast
│ init error of GLFW
...
So do I need the version of OpenGL to be higher than, but not equal to, 3.3.0?
from glfw.jl.
Do you have any special setup in place? E.g. running this headless (without monitor) or something?
from glfw.jl.
No, this was on a Ubuntu with Gnome (newest LTS with all the normal things). But I've switched it to Debian Buster (so not the latest) with just i3, to see if it was something Ubuntu related. The hardware this is on is a bit dated (2008) and nvidia-detect
said I needed buster for the correct nvidia driver. I still have OpenGL 3.3 and the driver for the Nvidia card is 340.108. I've now tried to use the Julia binaries instead of building from source (in order to test the workaround mentioned in #198), and now the error is slightly different:
(@v1.5) pkg> build GLMakie
Building ModernGL → `~/.julia/packages/ModernGL/rVuW2/deps/build.log`
Building FFTW ────→ `~/.julia/packages/FFTW/DMUbN/deps/build.log`
Building GLMakie ─→ `~/.julia/packages/GLMakie/cLuEl/deps/build.log`
┌ Error: Error building `GLMakie`:
│ init error of GLFW
...
As reported elsewhere trying to build GLFW
doesn't output anything at all. installing libglfw3
didn't help either.
So something must be up since this isn't working in either Ubuntu nor Debian...
from glfw.jl.
I don't see the error :D
Try:
using GLFW; GLFW.Window()
For a simple test!
from glfw.jl.
Gladly:
julia> using GLFW; GLFW.Window()
ERROR: GLFWError (API_UNAVAILABLE): GLX: No GLXFBConfigs returned
Stacktrace:
[1] _ErrorCallbackWrapper(::Int32, ::Cstring) at /home/shelin/.julia/packages/GLFW/CBo9c/src/callback.jl:43
[2] CreateWindow(::Int64, ::Int64, ::String, ::GLFW.Monitor, ::GLFW.Window) at /home/shelin/.julia/packages/GLFW/CBo9c/src/glfw3.jl:499
[3] GLFW.Window(; name::String, resolution::Tuple{Int64,Int64}, debugging::Bool, major::Int64, minor::Int64, windowhints::Array{Tuple{UInt32,Int64},1}, contexthints::Array{Tuple{UInt32,Integer},1}, visible::Bool, focus::Bool, fullscreen::Bool, monitor::Nothing, share::GLFW.Window) at /home/shelin/.julia/packages/GLFW/CBo9c/src/glfw3.jl:344
[4] GLFW.Window() at /home/shelin/.julia/packages/GLFW/CBo9c/src/glfw3.jl:316
[5] top-level scope at REPL[4]:1
from glfw.jl.
It's been long enough for all of these problems to have resolved themselves by now... So I think we can close this because, currently, I can't even reproduce the errors I reported here.
Both setting and not setting LD_PRELOAD
when running
using GLFW; GLFW.Window()
works (i.e. no errors and a new window is created).
Let me know if there is anything additional you want me to test. For reference:
julia> versioninfo()
Julia Version 1.8.0-beta1
Commit 7b711ce699 (2022-02-23 15:09 UTC)
Platform Info:
OS: Linux (x86_64-linux-gnu)
CPU: 32 × AMD Ryzen Threadripper 2950X 16-Core Processor
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-13.0.1 (ORCJIT, znver1)
Threads: 1 on 32 virtual cores
from glfw.jl.
It's been long enough for all of these problems to have resolved themselves by now...
Unfortunately, it's happening on my system. (That's why I found this issue).
So I think we can close this
Sure. I agree, since the root cause is JuliaLang/julia#34276, which is not fixed but closed at the time of writing.
from glfw.jl.
Is this releated? Using the newest ubuntu release 22.04 I get
julia> using GLFW; GLFW.Window()
libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: swrast
ERROR: GLFWError (VERSION_UNAVAILABLE): GLX: Failed to create context: GLXBadFBConfig
Stacktrace:
[1] _ErrorCallbackWrapper(code::Int32, description::Cstring)
@ GLFW ~/.julia/packages/GLFW/BWxfF/src/callback.jl:43
[2] CreateWindow(width::Int64, height::Int64, title::String, monitor::GLFW.Monitor, share::GLFW.Window)
@ GLFW ~/.julia/packages/GLFW/BWxfF/src/glfw3.jl:499
[3] GLFW.Window(; name::String, resolution::Tuple{Int64, Int64}, debugging::Bool, major::Int64, minor::Int64, windowhints::Vector{Tuple{UInt32, Int64}}, contexthints::Vector{Tuple{UInt32, Integer}}, visible::Bool, focus::Bool, fullscreen::Bool, monitor::Nothing, share::GLFW.Window)
@ GLFW ~/.julia/packages/GLFW/BWxfF/src/glfw3.jl:344
[4] GLFW.Window()
@ GLFW ~/.julia/packages/GLFW/BWxfF/src/glfw3.jl:316
[5] top-level scope
@ REPL[3]:1
``
from glfw.jl.
@hofmannmartin, use the workaround described in #198 (comment) on 22.04.
from glfw.jl.
I think it is, @hofmannmartin. I am using the same distribution (ubuntu 22.04) and got the same error. The workaround
LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6 julia
works.
from glfw.jl.
Related Issues (20)
- [Vulkan] Creating window surface cannot work on macOS HOT 1
- EGL support? HOT 1
- inaccurate performance counters HOT 1
- Compatability with julia-vscode? HOT 1
- test fail for Manjaro on Renoir APU HOT 1
- Don't know how to install this?
- TagBot trigger issue HOT 3
- No matching fbConfigs or visuals found HOT 3
- How to add new user data to the window context?
- Going to fullscreen causes a crash on macOS (Apple M1) HOT 1
- Please replace deprecated Makie.primary_resolution() with GLFW.jl cross-platform function
- GLFWError (API_UNAVAILABLE): WGL: The driver does not appear to support OpenGL HOT 1
- GL dependencies kill CI capacity HOT 2
- GLFW crashes entire julia session after re-attaching in tmux HOT 2
- unable to load GLMakie HOT 2
- GLFW couldn't create an OpenGL window. HOT 8
- NSInternalInconsistencyException when calling display() HOT 1
- No GLXFBConfigs returned using X11 forwarding HOT 1
- Release latest changes? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from glfw.jl.