podman run -it ubuntu:24.04
apt install git build-essential cmake pkgconf python3 libevent-dev libboost-dev qt6-base-dev qt6-tools-dev qt6-l10n-tools qt6-tools-dev-tools libgl-dev libqrencode-dev
git clone https://github.com/bitcoin/bitcoin/
cd bitcoin
cmake -B build -DENABLE_IPC=OFF -DBUILD_GUI=ON -DENABLE_WALLET=OFF
cmake --build build
ctest --test-dir build # works fine
### Enable LTO
cmake -B build -DENABLE_IPC=OFF -DBUILD_GUI=ON -DENABLE_WALLET=OFF -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
cmake --build build
ctest --test-dir build
...
The following tests FAILED:
6 - test_bitcoin-qt (SEGFAULT)
build/bin/test_bitcoin-qt
Segmentation fault (core dumped)
gdb build/bin/test_bitcoin-qt
...
Program received signal SIGSEGV, Segmentation fault.
0x000079e008f7bafa in ?? () from /lib/x86_64-linux-gnu/libQt6Core.so.6
(gdb) bt
[#0](/bitcoin-bitcoin/0/) 0x000079e008f7bafa in ?? () from /lib/x86_64-linux-gnu/libQt6Core.so.6
[#1](/bitcoin-bitcoin/1/) 0x000079e0095b3844 in QGuiApplication::screenAdded(QScreen*) () from /lib/x86_64-linux-gnu/libQt6Gui.so.6
[#2](/bitcoin-bitcoin/2/) 0x000079e0096024a6 in QWindowSystemInterface::handleScreenAdded(QPlatformScreen*, bool) () from /lib/x86_64-linux-gnu/libQt6Gui.so.6
[#3](/bitcoin-bitcoin/3/) 0x000079e005856a13 in ?? () from /usr/lib/x86_64-linux-gnu/qt6/plugins/platforms/libqminimal.so
[#4](/bitcoin-bitcoin/4/) 0x000079e0095ac142 in QGuiApplicationPrivate::createPlatformIntegration() () from /lib/x86_64-linux-gnu/libQt6Gui.so.6
[#5](/bitcoin-bitcoin/5/) 0x000079e0095ad860 in QGuiApplicationPrivate::createEventDispatcher() () from /lib/x86_64-linux-gnu/libQt6Gui.so.6
[#6](/bitcoin-bitcoin/6/) 0x000079e008f348b6 in QCoreApplicationPrivate::init() () from /lib/x86_64-linux-gnu/libQt6Core.so.6
[#7](/bitcoin-bitcoin/7/) 0x000079e0095ad8ff in QGuiApplicationPrivate::init() () from /lib/x86_64-linux-gnu/libQt6Gui.so.6
[#8](/bitcoin-bitcoin/8/) 0x000079e009ccc985 in QApplicationPrivate::init() () from /lib/x86_64-linux-gnu/libQt6Widgets.so.6
[#9](/bitcoin-bitcoin/9/) 0x00005b7f77cb9cff in BitcoinApplication::BitcoinApplication (this=<optimized out>, this=<optimized out>) at .././qt/bitcoin.cpp:201
[#10](/bitcoin-bitcoin/10/) 0x00005b7f77c6ee8b in main (argc=<optimized out>, argv=<optimized out>) at ./qt/test/test_main.cpp:78