Bug 479598 - Missing `operator delete(void*, unsigned long)@@Qt_5` and `_ZSt24__throw_out_of_range_fmtPKcz` symbols in Qt libraries (flatpak-kde-runtime)
Summary: Missing `operator delete(void*, unsigned long)@@Qt_5` and `_ZSt24__throw_out_...
Status: REPORTED
Alias: None
Product: Qt/KDE Flatpak Runtime
Classification: Developer tools
Component: general (other bugs)
Version First Reported In: unspecified
Platform: unspecified Linux
: NOR normal
Target Milestone: ---
Assignee: Aleix Pol
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-01-10 09:20 UTC by Palomar
Modified: 2024-01-10 09:20 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Palomar 2024-01-10 09:20:15 UTC
SUMMARY

I'm trying to develop a flatpak for 3D Slicer (https://slicer.org). My initial developments have lead to a working application distributed as a flatpak using the flatpak-kde-runtime (5.15-23.08).

 3D Slicer has a plugin system with its own distribution of pre-compiled binaries (one can see this as its own internal plugin store). These binaries have been built using the official binary distribution of qt on its 5.15.2 version (from http://download.qt.io/official_releases/online_installers/qt-unified-linux-x64-online.run)

When I install any plugin, the application crashes due to some missing symbols in the Qt libraries provided by flatpak-kde-runtime.

STEPS TO REPRODUCE
1. Install Slicer flatpak
2. Run the application
3. Go to the extension manager
4. Install a new extension
5. Restart the application

OBSERVED RESULT

The relevant errors produced 
```
/home/rafael/.var/app/org.slicer.Slicer/config/slicer.org/Extensions-31938/SegmentEditorExtraEffects/lib/Slicer-5.4/qt-loadable-modules/libvtkSlicerSegmentEditorFastMarchingModuleLogic.so: undefined symbol: _ZdlPvm, version Qt_5
```

and

```
/home/rafael/.var/app/org.slicer.Slicer/config/slicer.org/Extensions-31938/SlicerLiver/lib/Slicer-5.4/qt-loadable-modules/libvtkSlicerLiverVolumetryModuleLogic.so: undefined symbol: _ZSt24__throw_out_of_range_fmtPKcz, version Qt_5
```

EXPECTED RESULT

Since the qt libraries are in the same version for the flatpak-kde-runtime and the used in for building the slicer plugins, I would not expect missing symbols.

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION

Introspection an demangling on i.e., `undefined symbol: _ZdlPvm, version Qt_5` shows 

1) Taking the binary distribution of Slicer (which include the official binaries of Qt) the symbols corresponds to the sized deallocation delete:

```
Found in /tmp/Slicer-5.4.0-linux-amd64/lib/Slicer-5.4/libQt5Core.so.5
00000000003cbae0 T operator delete(void*, unsigned long)@@Qt_5
```
2) This symbols is not present in any qt .so file provided by the `flatpak-kde-runtime`

Would it be possible to build Qt in the flatpak-sdk-runtime in such way that this symbols (and the throw_out_of_range, which seems a similar case) is built?