AppImage fails to start with t.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat error
-
Hi all, I'm launching Cura AppImage in my Linux environment and it produces the following debug error log:
./UltiMaker-Cura-5.10.1-linux-X64.AppImage --debug UM/Settings/SettingFunction.py:244: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead def visit_Str(self, node: ast.Str) -> None: trimesh/interfaces/scad.py:28: DeprecationWarning: Use shutil.which instead of find_executable _scad_executable = find_executable('openscad', path=_search_path) trimesh/interfaces/blender.py:36: DeprecationWarning: Use shutil.which instead of find_executable _blender_executable = find_executable('blender', path=_search_path) trimesh/interfaces/vhacd.py:21: DeprecationWarning: Use shutil.which instead of find_executable _vhacd_executable = find_executable(_name, path=_search_path) trimesh/curvature.py:12: DeprecationWarning: Please use `coo_matrix` from the `scipy.sparse` namespace, the `scipy.sparse.coo` namespace is deprecated. from scipy.sparse.coo import coo_matrix trimesh/exchange/ply.py:953: DeprecationWarning: Use shutil.which instead of find_executable draco_encoder = find_executable('draco_encoder') trimesh/util.py:89: DeprecationWarning: 'pkgutil.find_loader' is deprecated and slated for removal in Python 3.14; use importlib.util.find_spec() instead return pkgutil.find_loader(name) is not None trimesh/exchange/binvox.py:18: DeprecationWarning: Use shutil.which instead of find_executable binvox_encoder = find_executable('binvox') trimesh/path/exchange/dxf.py:1101: DeprecationWarning: Use shutil.which instead of find_executable _teigha = find_executable(_name) Gtk-Message: 08:15:11.047: Failed to load module "canberra-gtk-module" (UltiMaker-Cura:11485): dbind-WARNING **: 08:15:11.192: Couldn't connect to accessibility bus: Failed to connect to socket /root/.cache/at-spi/bus_0: Permission denied Fontconfig warning: "/etc/fonts/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs" [MainThread] UM.Application.initialize [163]: Initializing UltiMaker Cura [MainThread] UM.Application.initialize [164]: App Version 5.10.1 [MainThread] UM.Application.initialize [165]: Api Version 8.10.0 [MainThread] UM.Application.initialize [166]: Build type None [MainThread] UM.PluginRegistry.addPluginLocation [205]: Plugin location /tmp/.mount_UltiMa2Hwv8f/../Resources/share/uranium/plugins must be a folder. [MainThread] UM.PluginRegistry.addPluginLocation [205]: Plugin location /tmp/.mount_UltiMa2Hwv8f/../Resources/share/cura/plugins must be a folder. [MainThread] UM.PluginRegistry.addPluginLocation [205]: Plugin location /tmp/lib/uranium must be a folder. [MainThread] UM.PluginRegistry.addPluginLocation [205]: Plugin location /tmp/lib64/uranium must be a folder. [MainThread] UM.PluginRegistry.addPluginLocation [205]: Plugin location /tmp/lib32/uranium must be a folder. [MainThread] UM.PluginRegistry.addPluginLocation [205]: Plugin location /tmp/.mount_UltiMa2Hwv8f/plugins must be a folder. [MainThread] UM.PluginRegistry.addPluginLocation [205]: Plugin location /tmp/Resources/uranium/plugins must be a folder. [MainThread] UM.PluginRegistry.addPluginLocation [205]: Plugin location /tmp/Resources/cura/plugins must be a folder. [MainThread] UM.Resources.__initializeStoragePaths [481]: Initializing storage paths [MainThread] UM.Resources.__initializeStoragePaths [491]: Config storage path is /home/frans/.config/cura/5.10 [MainThread] UM.Resources.__initializeStoragePaths [499]: Data storage path is /home/frans/.local/share/cura/5.10 [MainThread] UM.Resources.__initializeStoragePaths [511]: Cache storage path is /home/frans/.cache/cura/5.10 UM/Qt/QtApplication.py:701: DeprecationWarning: QEvent constructor is deprecated super().__init__(self.QtFunctionEvent) [MainThread] UM.PackageManager.__init__ [56]: Found bundled packages JSON file: /tmp/.mount_UltiMa2Hwv8f/share/uranium/resources/bundled_packages/uranium.json [MainThread] UM.PackageManager.__init__ [56]: Found bundled packages JSON file: /tmp/.mount_UltiMa2Hwv8f/share/cura/resources/bundled_packages/cura.json [MainThread] UM.View.GL.OpenGLContext.detectBestOpenGLVersion [124]: Trying OpenGL context 4.1... qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 4.1, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QColorSpace(), profile QSurfaceFormat::CoreProfile) qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 4.1, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QColorSpace(), profile QSurfaceFormat::CoreProfile) Could not initialize GLX Fatal Python error: Aborted Current thread 0x00007fb5bd654740 (most recent call first): File "UM/View/GL/OpenGLContext.py", line 36 in setContext File "UM/View/GL/OpenGLContext.py", line 125 in detectBestOpenGLVersion File "UM/Qt/QtApplication.py", line 178 in initialize File "cura/CuraApplication.py", line 349 in initialize File "UM/Application.py", line 288 in run File "UM/Qt/QtApplication.py", line 385 in run File "cura/CuraApplication.py", line 881 in run File "cura_app.py", line 243 in <module> Extension modules: PyQt6.QtCore, PyQt6.QtNetwork, PyQt6.QtGui, PyQt6.QtWidgets, numpy.core._multiarray_umath, numpy.core._multiarray_tests, numpy.linalg._umath_linalg, numpy.fft._pocketfft_internal, numpy.random._common, numpy.random.bit_generator, numpy.random._bounded_integers, numpy.random._mt19937, numpy.random.mtrand, numpy.random._philox, numpy.random._pcg64, numpy.random._sfc64, numpy.random._generator, scipy._lib._ccallback_c, scipy.sparse._sparsetools, _csparsetools, scipy.sparse._csparsetools, scipy.sparse.linalg._isolve._iterative, scipy.linalg._fblas, scipy.linalg._flapack, scipy.linalg.cython_lapack, scipy.linalg._cythonized_array_utils, scipy.linalg._solve_toeplitz, scipy.linalg._decomp_lu_cython, scipy.linalg._matfuncs_sqrtm_triu, scipy.linalg.cython_blas, scipy.linalg._matfuncs_expm, scipy.linalg._decomp_update, scipy.linalg._flinalg, scipy.sparse.linalg._dsolve._superlu, scipy.sparse.linalg._eigen.arpack._arpack, scipy.sparse.csgraph._tools, scipy.sparse.csgraph._shortest_path, scipy.sparse.csgraph._traversal, scipy.sparse.csgraph._min_spanning_tree, scipy.sparse.csgraph._flow, scipy.sparse.csgraph._matching, scipy.sparse.csgraph._reordering, scipy.spatial._ckdtree, scipy._lib.messagestream, scipy.spatial._qhull, scipy.spatial._voronoi, scipy.spatial._distance_wrap, scipy.spatial._hausdorff, scipy.special._ufuncs_cxx, scipy.special._ufuncs, scipy.special._specfun, scipy.special._comb, scipy.special._ellip_harm_2, scipy.spatial.transform._rotation, _cffi_backend, PyQt6.QtOpenGL, PyQt6.QtQml, PyQt6.QtQuick, pyArcus, PyQt6.QtSvg, pyclipper._pyclipper, pynest2d, scipy.optimize._minpack2, scipy.optimize._group_columns, scipy.optimize._trlib._trlib, scipy.optimize._lbfgsb, _moduleTNC, scipy.optimize._moduleTNC, scipy.optimize._cobyla, scipy.optimize._slsqp, scipy.optimize._minpack, scipy.optimize._lsq.givens_elimination, scipy.optimize._zeros, scipy.optimize.__nnls, scipy.optimize._highs.cython.src._highs_wrapper, scipy.optimize._highs._highs_wrapper, scipy.optimize._highs.cython.src._highs_constants, scipy.optimize._highs._highs_constants, scipy.linalg._interpolative, scipy.optimize._bglu_dense, scipy.optimize._lsap, scipy.optimize._direct, shapely.lib, shapely._geos, shapely._geometry_helpers, scipy.ndimage._nd_image, _ni_label, scipy.ndimage._ni_label (total: 88) Aborted
Checking through the code of the qglx_findConfig with the variables selected it looks like it most probably has an empty config list.
This used to work, but recently my system was updated. I run Gentoo with limited unmasking. Last time round this popped up, I downgraded Mesa, but this time round it is more difficult. The old versions of Mesa has been removed and trying to install the old versions result in a bees nest of dependencies that have received a similar fate. I built a simple Python test example using the code similar to what Cura uses and that runs without problems in a Python venv. Does someone here know what I could do to unravel this problem?
-
I solved the problem for my machine. I did change 2 things at the same time:
The one that I think solved it was disabling the llvm use flag for mesa. I also enabled the z3 flag (as it was also mentoined here) for llvm. Maybe if I have time I'll see which one causes the bug, but for now it works and the long queue of print jobs that need printing can finally be done! Gentoo Linux users have a solution how to tackle this and if newer versions of Ubuntu or other Linux distro's have this issue, then at least there is some information for a solution.