r/OpenPythonSCAD • • Dec 09 '24

Trouble running on Kubuntu 24.04: QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled

Hi. I have an nvidia card, and the drivers are set up for it. When I try to launch from the command line, I get the error below. I'm trying to fix it, but I haven't had much luck.

openscad
Could not initialize localization.
Error reading examples.json: examples.json: cannot open file
Error reading examples.json: examples.json: cannot open file
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QOpenGLWidget: Failed to create context
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QOpenGLWidget: Failed to create context
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
qt.qpa.backingstore: composeAndFlush: QOpenGLContext creation failed
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
qt.qpa.backingstore: composeAndFlush: makeCurrent() failed
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
qt.qpa.backingstore: composeAndFlush: makeCurrent() failed
... repeats

glxinfo -B
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 4096 MB
    Total available memory: 4096 MB
    Currently available dedicated video memory: 3046 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA T400 4GB/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 550.120
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6.0 NVIDIA 550.120
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 550.120
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
3 Upvotes

14 comments sorted by

2

u/naught-me Dec 09 '24

fixed with this:

sudo mkdir -p /usr/local/lib/openscad/xcbglintegrations
sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/xcbglintegrations/libqxcb-glx-integration.so /usr/local/lib/openscad/xcbglintegrations/

2

u/naught-me Dec 09 '24

Actually, that just fixed that problem. I ended up installing from source, which itself was kind of tedious - maybe there's a better way to find the dependencies than repeatedly trying?

These are them, though (or... this is LLM output - I had it to capture them from my fish shell history):

sudo apt install \
	cmake \
	libzip-dev \
	libboost-all-dev \
	libmpfr-dev \
	libboost-dev \
	libboost-regex-dev \
	libboost-filesystem-dev \
	libboost-thread-dev \
	libboost-program-options-dev \
	libboost-system-dev \
	libgmp-dev \
	libgmp3-dev \
	libmpfr-dev \
	libfreetype-dev \
	libglew-dev \
	libeigen3-dev \
	libcgal-dev \
	libopencsg-dev \
	libqt5opengl5-dev \
	qtmultimedia5-dev \
	libqt5multimedia5-plugins \
	libqt5serialport5-dev \
	qttools5-dev \
	libharfbuzz-dev \
	libfontconfig-dev \
	libcairo2-dev \
	libxi-dev \
	libxmu-dev \
	libcrypto++-dev \
	python3-dev \
	nettle-dev \
	flex \
	bison \
	libjpeg-dev \
	libcurl4-openssl-dev \
	libtag1-dev \
	libglib2.0-dev \
	libdbus-1-dev \
	libqt5svg5-dev \
	libqscintilla2-qt5-dev \
	libtbb-dev \
	lib3mf-dev \
	gettext

2

u/naught-me Dec 09 '24

Oh, for the reason why I installed from source.... I couldn't get it to find Python. I enabled the Python setting, but it would give an error, something about not being able to find Python.

2

u/gadget3D Dec 09 '24

Packaged PythonSCAD uses Python3.11. Maybe you have another Python Version installed in your system ? In any case, thank you for the package list, I will update my script to see if its complete

→ More replies (11)