Qt Static Linking или AppImage

Здравствуйте, я пытаюсь сделать статическое связывание в QT в Linux OpenSUSE 42.3, но у меня возникают некоторые проблемы https://doc.qt.io/qt-5.6/linux-deployment.html Я использую эту инструкцию и ищу qt на компьютере (я установил qt creator, qt5 des., Qt5 ass., Qt5 D-Bus viewer), и я получаю много вариантов (4xQT, QT5, QT5CORE и т. Д.), Я пытаюсь найти где-нибудь файл конфигурации (который запускается в инструкции ./configure -static -prefix / path / to / Qt, но я ничего не получаю), также я нахожу linuxdeployqt
который может создать исполняемый файл (AppImage), так что же использовать linuxdeployqt (AppImage) или статическое связывание QT все еще стоит тратить мое время? Какая разница?

-1

Решение

Добро пожаловать в мир Qt!

Вы должны понимать установку Qt двумя способами.

1) Динамическая библиотека (Shared lib в linux), использующая онлайн / офлайн установщик Qt или некоторую библиотеку, уже есть в большинстве ОС Linux.

2) Статическая библиотека (Static lib в linux) с использованием исходного кода Qt, а затем выполните ручную настройку с помощью ./configure с несколькими опциями.

Ваша проблема довольно проста для решения, если вы правильно поняли, как установить Qt со статической связью в вашей ОС Linux.

Теперь проверьте эту ссылку
http://www.linuxfromscratch.org/blfs/view/svn/x/qt5.html

здесь они предоставили пошаговую инструкцию для загрузки исходного кода Qt и настройки параметров.

Теперь для вас важным параметром является — «Статические»

./ configure -prefix $ QT5PREFIX \
-sysconfdir / etc / xdg \
-подтверждение-лицензия \
-Открытый исходный код \
статический \
-dbus-связанный \
-openssl-связанный \
-system-harfbuzz \
-система-sqlite \
Приведу примеры \
-no-rpath \
пропустить qtwebengine &&

который я добавил для вас и выделил.

Пожалуйста, поделитесь тем, чего вы хотите достичь именно с этой целью, статическая компиляция полезна только в том случае, если вы пользуетесь коммерческой лицензией Qt, если вы хотите перейти на версию с открытым исходным кодом, тогда вам нужно выбрать динамическое развертывание библиотеки … проверить часть лицензирования .. ,

если вам нужно динамическое развертывание, давайте уточним ваш вопрос с точным требованием.

0

Другие решения

Других решений пока нет …