ContinuumIO / anaconda-issues

Anaconda issue tracking
646 stars 220 forks source link

qt-main has missing dependencies that can cause segmentation faults on linux #13007

Open Marie-Terrell opened 2 years ago

Marie-Terrell commented 2 years ago

Checklist

Package info

  1. Name: qt-main
  2. Source: http://download.qt.io/official_releases/qt/5.15/5.15.2/single/qt-everywhere-src-5.15.2.tar.xz
  3. Platform: linux-64
  4. Conda-forge feedstock: https://github.com/conda-forge/qt-main-feedstock

Problem

I am encountering the same issue noted here with conda-forge: https://github.com/conda-forge/qt-main-feedstock/issues/32 That was fixed there by: https://github.com/conda-forge/qt-main-feedstock/pull/39/files

Using the "ubuntu-latest image for GitHub Actions, if you create an environment with qt-main installed:

ldd $CONDA_PREFIX/plugins/platforms/libqxcb.so | grep "not found"
    libxcb-icccm.so.4 => not found
    libxcb-image.so.0 => not found
    libxcb-keysyms.so.1 => not found
    libxcb-render-util.so.0 => not found
    libxcb-icccm.so.4 => not found
    libxcb-image.so.0 => not found
    libxcb-keysyms.so.1 => not found
    libxcb-render-util.so.0 => not found

Running the following allows me to get past the issue, but we did not need these installed on the system previously:

sudo apt-get install libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-render-util0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-render-util0

Additional Context

No response

katietz commented 2 years ago

well, new qt xcb support (which got pretty essemtial for Qt's X11 support) requires them. So it is in general a good thing to install them from your system-components. The approach that we provide the system-components xcb-util* ourself is nothing we see as something good. Even if we are aware that there seem to be others providing such libraries as a conda-package. Those libraries are system-core libraries, might differ between versions of OS and distribution. So whatever version which would be picked here is pretty like mid or longer term compromising your OS itself. So the approach to install them is the correct one. Of course if you are brave, your can install those xcb-util packages on top from different sources in your environment manually.

katietz commented 2 years ago

to the title of this PR. It is not correct. We don't miss something, your OS miss something. About your work-a-round. Take care you just refer to old qt version fo linux-64, as for other linux-architectures this version is not supported at all

katietz commented 2 years ago

thank you!