У меня QT 5.2 установлен на Ubuntu 12.04. Я не создал его, а просто загрузил и распаковал с сайта QT. Мой вопрос заключается в том, как мы можем упаковать необходимые библиотеки вместе с исполняемым файлом для развертывания? Документация QT говорит, что мы должны построить QT для статической компоновки, но в файле QT отсутствует файл конфигурации. Спасибо заранее.Как развернуть приложение QT5.2?
ответ
Ok. Поэтому мне, наконец, удалось развернуть мое приложение Qt вместе со своими зависимостями после бесчисленных часов работы в Интернете. Это было сделано на Ubuntu 12.04 с Qt 5.2.
Это, как я это сделал:
Статический построить Qt из источника, используя следующую команду:
./configure -opensource -confirm-license -prefix ./qtbase -make libs -make tools -release -opengl desktop -static -skip qtwebkit -no-icu -nomake tests -nomake examples make -j -4
Вы можете загрузить исходный код из http://download.qt-project.org/official_releases/qt/5.2/5.2.1/single/qt-everywhere-opensource-src-5.2.1.tar.gz Вы не можете статическими постройте версию установщика Qt.
Откройте ваш проект Qt и восстановите его. Зависимости Qt будут встроены в исполняемый файл приложения. Проверьте с помощью ldd, чтобы убедиться, что все сделано правильно.
ldd ./<app_executable>
Теперь, когда вы пытаетесь запустить это на систему без Qt может попросить другие зависимости третьих сторон, которые вы видите с LDD. Например: libxcb -... Вы можете либо установить эти зависимости с помощью apt-get в целевой системе, либо предоставить вам файлы с вашим приложением. То есть: добавьте необходимые файлы .so и их мягкие ссылки в каталог с именем libs вместе с вашим исполняемым файлом.
После устранения проблем с зависимостями lib приложение сообщит об ошибке, связанной с отсутствием шрифтов Qt. Самый простой способ исправить это - предоставить папку Qt fonts вместе с приложением.
Эта ссылка дает хороший способ сделать это: http://goblincoding.com/2013/11/07/deploying-qt-5-applications-on-ubuntu-12-04/
Резюме выше страницы является то, что вам нужно поставить небольшой Баш скрипт для запуска приложения. скрипт должен выглядеть следующим образом:
#~/bin/bash export LD_LIBRARY_PATH=./libs export QT_QPA_FONTDIR=./fonts ./<app_executable>
Целевая система теперь будет найти эти библиотеки и шрифты из каталогов, поставляемых и будет работать без проблем. Надеюсь, это помогло.
ПРИМЕЧАНИЕ. Я не пробовал, но этот метод сценария должен работать, даже если вы поставляете библиотеки Qt без статического построения источника qt.
Настоящим решением было бы упаковать ваше программное обеспечение в пакет .deb, чтобы вы могли указать зависимости.Когда он будет установлен в целевой системе с помощью apt, будут загружены и установлены соответствующие зависимости. Это единственный разумный способ развертывания приложения в системе с менеджером пакетов. –
@jack_black, когда я запускаю ./configure, я получаю «bash: ./configure: Нет такого файла или каталога» - что это значит? – clearScreen
@clearScreen Я думаю, что вы пытаетесь запустить скрипт из неправильной папки. Убедитесь, что скрипт «configure» присутствует в каталоге. – ravindu1024
- 1. QT5.2 Файлы ресурсов
- 2. Как развернуть приложение symfony2?
- 3. Как развернуть приложение dropwizard
- 4. Как развернуть большое приложение
- 5. Как развернуть веб-приложение
- 6. Как развернуть консольное приложение
- 7. Как развернуть веб-приложение
- 8. Как развернуть приложение mvc
- 9. Как развернуть приложение Mono?
- 10. Как развернуть приложение jRuby?
- 11. Как развернуть приложение Symfony3?
- 12. Как развернуть Rails-приложение
- 13. Как развернуть приложение MFC?
- 14. Развернуть как веб-приложение
- 15. как развернуть рубиновое приложение?
- 16. Как развернуть приложение Angular.js?
- 17. как развернуть приложение автоматически
- 18. Как создать заставку в Qt5.2 на Android?
- 19. приложение двигатель Google, как правильно развернуть приложение
- 20. Как развернуть веб-приложение ASP.net
- 21. Как развернуть мое приложение rails
- 22. Как автоматически развернуть веб-приложение
- 23. Как развернуть приложение для OpenLaszlo?
- 24. Как развернуть приложение с QT5
- 25. Как развернуть приложение ASP.NET MVC3?
- 26. Как развернуть приложение java swing
- 27. Как развернуть приложение в JBOSS?
- 28. Как развернуть приложение Spark Streaming?
- 29. Как развернуть приложение silverlight 4
- 30. Как развернуть приложение symfony 2
[документация] (http://qt-project.org/doc/qt-5/linux-deployment.html) фактически охватывает как статические, так и общие ссылки. Вам нужны источники [Qt] (http://qt-project.org/downloads) для восстановления статического Qt, если вы решите пойти таким путем. – peppe
Загрузил источники и построил их. Будет следовать документации и обновлять статус здесь. – ravindu1024
Я построил источник для статической привязки, и приложение теперь включает в себя все Qt libs. Но он по-прежнему не работает на других системах, поскольку сторонние библиотеки не связаны. (например: libxcb *). – ravindu1024