# Volume rendering broken in latest Linux previews?

**URL:** <https://discourse.slicer.org/t/volume-rendering-broken-in-latest-linux-previews/46974>\
**Category:** Support\
**Created:** [May 8, 2026, 6:49pm UTC](https://discourse.slicer.org/t/volume-rendering-broken-in-latest-linux-previews/46974 "2026-05-08T18:49:10Z")\
**Posts on this page:** 1\
**Showing post:** 29

<div class="post-metadata">

**Author:** ![jamesobutler](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jamesobutler/32/7511_2.png) [@jamesobutler](https://discourse.slicer.org/u/jamesobutler)\
**Post date:** [May 14, 2026, 1:01am UTC](https://discourse.slicer.org/t/volume-rendering-broken-in-latest-linux-previews/46974/29 "2026-05-14T01:01:18Z")

</div>

@pieper I asked because I was thinking about

`_GLIBCXX_USE_CXX11_ABI=0`

> **[Verifying connection...](https://gitlab.kitware.com/vtk/vtk/-/work_items/1991)**

Does the issue happen in Slicer core with no extensions installed with its self-built VTK whl or does a Slicer extension install a specific VTK whl that pulls from PyPI that is using a different `_GLIBCXX_USE_CXX11_ABI`?

> <https://github.com/Slicer/Slicer/pull/8168>
>
> This commit introduces the ability to configure a \`\_manylinux\` module in the Sli…cer build system to enhance compatibility when installing binary Python wheels.
> 
> This update resolves potential issues with installing Python wheels built for newer GLIBC versions or ABIs, which could cause crashes in environments with older configurations.
> 
> Specifically, installing \`manylinux\_2\_28\_x86\_64\` ITK wheels compiled with \`\_GLIBCXX\_USE\_CXX11\_ABI=1\` was causing segmentation faults in the \_Stable\_ Slicer version, which is compiled with \`\_GLIBCXX\_USE\_CXX11\_ABI=0\`. The \`\_manylinux\` module ensures that \`manylinux\_2\_17\_x86\_64\` ITK wheels are always installed, even when Slicer and its associated Python interpreter are executed on newer operating systems.
> 
> The \`\_manylinux.py\` module is dynamically generated during the build process and ensures that Python packages installed via \`pip\` are compatible with the GLIBC version used in the Slicer build environment.
> 
> \### Summary of Changes
> 
> \*\*\`External\_python.cmake\`\*\*:
> \- Added logic to configure \`\_manylinux.py\` for Linux-based build environments.
> \- By default, \`\_manylinux.py\` is generated. If disabled using the CMake option \`PYTHON\_CONFIGURE\_MANYLINUX\_MODULE\`, any existing \`\_manylinux.py\` module is removed to prevent inadvertent impacts on Python package installations.
> \- Introduced a CMake option \`PYTHON\_REMOVE\_MANYLINUX\_MODULE\_IF\_EXISTS\` to allow users to disable the removal of an existing \`\_manylinux.py\` module.
> 
> \*\*\`python\_configure\_manylinux\_module.cmake\`\*\*:
> \- New CMake script to detect the system's GLIBC version using \`ldd\`.
> \- Dynamically generates the \`\_manylinux.py\` module, which includes:
> - A \`manylinux\_compatible\` function to override the default behavior of \`pip\` for checking compatibility of manylinux tags.
> - Embedded documentation and compatibility checks to prevent crashes caused by mismatched ABI or GLIBC versions.
> 
> By restricting installed packages to compatible manylinux tags, this update ensures stability and reliability for Python packages in the Slicer ecosystem.
> 
> \### References
> 
> \- \[PEP 600: Manylinux Platform Tag\](https://peps.python.org/pep-0600/)
> \- \[GCC Dual ABI Documentation\](https://gcc.gnu.org/onlinedocs/libstdc++/manual/using\_dual\_abi.html)

> [@Slicer Build Environment Upgraded to \`qt5-almalinux8-gcc14\`](https://discourse.slicer.org/t/slicer-build-environment-upgraded-to-qt5-almalinux8-gcc14/43802):
>
> The build environment used for generating Slicer Preview and its extensions has been upgraded from qt5-centos7-gcc7 to qt5-almalinux8-gcc14. This update brings improved C++ standards support, better compatibility with modern systems, and eliminates complications related to the Dual ABI issue previously discussed [here](https://discourse.slicer.org/t/temporary-disabling-of-stable-extension-builds-in-preparation-for-slicer-5-8-release-visual-studio-update/41207/7). Comparison of Build Environments Build Environment Minimum Required glibc Manylinux Policy GCC Version Compatible Systems qt5-centos7-gcc7 2.17 manylinux2014, manylinux\_2…

Latest VTK on PyPI only provide x86\_64 whls that are manylinux\_2\_17 as they provide manylinux\_2\_28 whl for ARM64 Linux only. [vtk · PyPI](https://pypi.org/project/vtk/9.6.1/#files)

---

_[View the full topic](https://discourse.slicer.org/t/volume-rendering-broken-in-latest-linux-previews/46974)._
