JuliaPlots / GLMakie.jl

OpenGL backend for Makie
Other
46 stars 25 forks source link

build error #90

Closed kleskjr closed 4 years ago

kleskjr commented 4 years ago

Hi, I wanted to give Makie a try, but bumped into a problem

(v1.3) pkg> build GLMakie                                                
  Building ModernGL → `~/.julia/packages/ModernGL/rVuW2/deps/build.log`                                                                            
[ Info: No changes                                                       
  Building GLMakie ─→ `~/.julia/packages/GLMakie/aNKYB/deps/build.log`                                                                             
┌ Error: Error building `GLMakie`:                                                                                                                 
│ libGL error: MESA-LOADER: failed to open radeonsi (search paths /usr/lib/dri)                                                                    
│ libGL error: failed to load driver: radeonsi                                                                                                     
│ libGL error: MESA-LOADER: failed to open radeonsi (search paths /usr/lib/dri)                                                                    
│ libGL error: failed to load driver: radeonsi                                                                                                     
│ libGL error: MESA-LOADER: failed to open swrast (search paths /usr/lib/dri)                                                                      
│ libGL error: failed to load driver: swrast                                                                                                       
│ init error of GLFW                                                                                                                               
│ ERROR: LoadError: OpenGL/GLFW wasn't installed correctly. This likely means,                                                                     
│ you don't have an OpenGL capable Graphic Card,                                                                                                   
│ you don't have the newest video driver installed,                                                                                                
│ or the GLFW build failed. If you're on linux and `]build` GLFW failed,                                                                           
│ try manually adding `sudo apt-get install libglfw3` and then `]build GLMakie`.                                                                   
│ If you're on a headless server, you still need to install x-server and                                                                           
│ proper GPU drivers. You can take inspiration from this article                                                                                   
│ on how to get Makie running on a headless system:                                                                                                
│ https://nextjournal.com/sdanisch/makie-1.0                                                                                                       
│ If you don't have a GPU, there is also a Cairo software backend                                                                                  
│ for Makie which you can use:                                                                                                                     │ https://github.com/JuliaPlots/CairoMakie.jl.                                                                                                     
│ Please check the below error and open an issue at:                                                                                               │ https://github.com/JuliaPlots/GLMakie.jl.                                                                                                        
│ After you fixed your OpenGL install, please run `]build GLMakie` again!                                                                          
│ GLMakie will still load, but will be disabled as a default backend for Makie                 

│ Stacktrace:                                                                                                                                      
│  [1] error(::String) at ./error.jl:33                                  
│  [2] top-level scope at /home/kleskjr/.julia/packages/GLMakie/aNKYB/deps/build.jl:63
│  [3] include at ./boot.jl:328 [inlined]                                                                                                          
│  [4] include_relative(::Module, ::String) at ./loading.jl:1105                                                                                   
│  [5] include(::Module, ::String) at ./Base.jl:31                                                                                                 
│  [6] include(::String) at ./client.jl:424                                                                                                        
│  [7] top-level scope at none:5                                         
│ in expression starting at /home/kleskjr/.julia/packages/GLMakie/aNKYB/deps/build.jl:31
│ caused by [exception 1]                                                
│ GLFWError (VERSION_UNAVAILABLE): GLX: Failed to create context: GLXBadFBConfig                                                                   
│ Stacktrace:                       
│  [1] _ErrorCallbackWrapper(::Int32, ::Cstring) at /home/kleskjr/.julia/packages/GLFW/pDV97/src/callback.jl:43
│  [2] CreateWindow(::Int64, ::Int64, ::String, ::GLFW.Monitor, ::GLFW.Window) at /home/kleskjr/.julia/packages/GLFW/pDV97/src/glfw3.jl:487
│  [3] #Window#15(::String, ::Tuple{Int64,Int64}, ::Bool, ::Int64, ::Int64, ::Array{Tuple{UInt32,Int64},1}, ::Array{Tuple{UInt32,Integer},1}, ::Boo
l, ::Bool, ::Bool, ::Nothing, ::GLFW.Window, ::Type{GLFW.Window}) at /home/kleskjr/.julia/packages/GLFW/pDV97/src/glfw3.jl:338
│  [4] (::Core.var"#kw#Type")(::NamedTuple{(:resolution, :major, :minor, :visible, :focus),Tuple{Tuple{Int64,Int64},Int64,Int64,Bool,Bool}}, ::Type
{GLFW.Window}) at ./tuple.jl:0
│  [5] top-level scope at /home/kleskjr/.julia/packages/GLMakie/aNKYB/deps/build.jl:34
│  [6] include at ./boot.jl:328 [inlined]                                                                                                          
│  [7] include_relative(::Module, ::String) at ./loading.jl:1105                                                                                   
│  [8] include(::Module, ::String) at ./Base.jl:31                                                                                                 
│  [9] include(::String) at ./client.jl:424                                                                                                        
│  [10] top-level scope at none:5                                        
└ @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.3/Pkg/src/backwards_compatible_isolation.jl:649

I am on an Archlinux machine with Vega GPU. Tried with regular mesa package, now I am on the latest mesa-git

GL seems fine. Some system info:

~/ glxinfo -B                                                                                                                                  [0]
name of display: :0.0     
display: :0  screen: 0                                                   
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: X.Org (0x1002)
    Device: AMD RAVEN (DRM 3.36.0, 5.6.3-arch1-1, LLVM 9.0.1) (0x15d8)
    Version: 20.1.0              
    Accelerated: yes             
    Video memory: 2048MB           
    Unified memory: no            
    Preferred profile: core (0x1)                                        
    Max core profile version: 4.6
    Max compat profile version: 4.6                                      
    Max GLES1 profile version: 1.1                                       
    Max GLES[23] profile version: 3.2                           
Memory info (GL_ATI_meminfo):                                            
    VBO free memory - total: 1979 MB, largest block: 1979 MB         
    VBO free aux. memory - total: 3044 MB, largest block: 3044 MB                                                                                  
    Texture free memory - total: 1979 MB, largest block: 1979 MB
    Texture free aux. memory - total: 3044 MB, largest block: 3044 MB
    Renderbuffer free memory - total: 1979 MB, largest block: 1979 MB
    Renderbuffer free aux. memory - total: 3044 MB, largest block: 3044 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 2048 MB                                                                                                                
    Total available memory: 5120 MB                                                                                                                
    Currently available dedicated video memory: 1979 MB  
OpenGL vendor string: X.Org                                              
OpenGL renderer string: AMD RAVEN (DRM 3.36.0, 5.6.3-arch1-1, LLVM 9.0.1) 
OpenGL core profile version string: 4.6 (Core Profile) Mesa 20.1.0-devel (git-b06fdb8edd)
OpenGL core profile shading language version string: 4.60                                                                                          
OpenGL core profile context flags: (none)   
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6 (Compatibility Profile) Mesa 20.1.0-devel (git-b06fdb8edd)
OpenGL shading language version string: 4.60                                                                                                       
OpenGL context flags: (none)                                                                                                                       
OpenGL profile mask: compatibility profile

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 20.1.0-devel (git-b06fdb8edd)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20 

Any help is appreciated!

SimonDanisch commented 4 years ago

Looks like: https://github.com/JuliaGL/GLFW.jl/issues/198

kleskjr commented 4 years ago

yep, the workaround worked for me. Thanks!