Вам нужно собрать сам Qt статически.Инструкции:
https://doc.qt.io/qt-5/linux-building.html
Чтобы выполнить статическую сборку, передайте флаг -static
на ./configure
.Возможно, вы захотите установить это в свой домашний каталог вместо всей системы.В этом случае также передайте что-то вроде -prefix $HOME/custom_qt/5.12.3
, чтобы эта сборка Qt была установлена в вашем домашнем каталоге, когда вы выполните make install
.
Сборка займет много времени, поэтому обязательно используйтеmake -jN
для его сборки (замените N
на количество потоков / ядер, которое имеется в вашем процессоре.) Это все равно займет много времени, поэтому вам, вероятно, следует отключить ненужные модули Qt (например, webkit).модуль).Если вы загрузили полный исходный пакет Qt (например, https://download.qt.io/official_releases/qt/5.12/5.12.3/single/qt-everywhere-src-5.12.3.tar.xz),, тогда вам просто нужно удалить подкаталоги модулей, которые вам не нужны до вызова ./configure
.
После того, как вы успешно скомпилировали и установили его, вам нужно собрать приложение, используя эту версию Qt. Если ваше приложение использует qmake, то используйте ~/custom_qt/5.12.3/bin/qmake
для его настройки и сборки.
Альтернатива статическому построению
Обратите внимание, что вместо статического связывания вы можете использовать обычное динамическое связывание, но упаковать свое приложение как AppImage, используя инструмент linuxdeployqt . Подробнее о AppImage:
https://appimage.org