CQ-editor: Fails to start on Arch Linux

When I run the pre-packaged binary on Arch Linux, I get the following error in the terminal:

Namespace(filename=None)
libGL error: MESA-LOADER: failed to open radeonsi: /home/user/tmp/CQ-editor-Linux-x86_64/CQ-editor/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /usr/lib/dri/radeonsi_dri.so) (search paths /usr/lib/dri, suffix _dri)
libGL error: failed to load driver: radeonsi
libGL error: MESA-LOADER: failed to open radeonsi: /home/user/tmp/CQ-editor-Linux-x86_64/CQ-editor/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /usr/lib/dri/radeonsi_dri.so) (search paths /usr/lib/dri, suffix _dri)
libGL error: failed to load driver: radeonsi
libGL error: MESA-LOADER: failed to open swrast: /home/user/tmp/CQ-editor-Linux-x86_64/CQ-editor/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /usr/lib/dri/swrast_dri.so) (search paths /usr/lib/dri, suffix _dri)
libGL error: failed to load driver: swrast
libGL error: MESA-LOADER: failed to open radeonsi: /home/user/tmp/CQ-editor-Linux-x86_64/CQ-editor/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /usr/lib/dri/radeonsi_dri.so) (search paths /usr/lib/dri, suffix _dri)
libGL error: failed to load driver: radeonsi
libGL error: MESA-LOADER: failed to open radeonsi: /home/user/tmp/CQ-editor-Linux-x86_64/CQ-editor/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /usr/lib/dri/radeonsi_dri.so) (search paths /usr/lib/dri, suffix _dri)
libGL error: failed to load driver: radeonsi
libGL error: MESA-LOADER: failed to open swrast: /home/user/tmp/CQ-editor-Linux-x86_64/CQ-editor/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /usr/lib/dri/swrast_dri.so) (search paths /usr/lib/dri, suffix _dri)
libGL error: failed to load driver: swrast

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 16 (13 by maintainers)

Most upvoted comments

Anyway if the pyinstaller version packages blas, the system blas should not be required right?

Something is still missing. I can see libblas in the package, but since you’re still having to install the blas package we’re missing dependencies somewhere.

I tested build 117. I was able to install/run on:

  • Ubuntu 20.04
  • Ubuntu 21.10
  • Fedora 35 (had to create a symlink to libblas64.so.3)

To resolve ImportErrors on Ubuntu: $ sudo apt install libglew2.1 $ sudo apt install libblas3

To resolve Import Errors on Fedora: $ sudo dnf install libGLEW create libblas.so.3 symlink

I can reproduce this with Fedora 35 and CQ-editor version 0.2.

The CQ-editor GUI appears but render fails. The Log viewer then shows:

[2022-01-09 16:46:07.983459] ERROR: CQ GUI: Uncaught exception occurred
Traceback (most recent call last):
  File "cq_editor/widgets/occt_widget.py", line 131, in paintEvent
  File "cq_editor/widgets/occt_widget.py", line 153, in _initialize
OCP.Aspect.Aspect_GraphicDeviceDefinitionError: OpenGl_Window::CreateWindow: glXCreateContext failed.

Both the rm solution mentioned above or LD_PRELOAD (as mentioned by an ubuntu 21.10 user in google groups) workaround the issue:

  • rm ./CQ-editor-0.2/libstdc++.so.6
  • LD_PRELOAD=/lib64/libstdc++.so.6

This is because the package uses an old libstdc++ that my video driver binary is not compatible with. A possible solution may be to not ship libraries that have a strong ABI policy like libstdc++ with the pre-packaged binary.

A workaround is to delete the library: rm CQ-editor/libstdc++.so.6.