Проблемы с развертыванием QT exe для Windows - PullRequest
0 голосов
/ 15 ноября 2018

Используя QT Creator 4.7.1, я создаю новое приложение для виджетов Qt. Я выбираю режим разблокировки enter image description here

потом строю проект.

в папке релиза, мой exe выглядит так

enter image description here

теперь я открываю командную строку и запускаю команду

windeployqt.exe C:\Users\rober\Desktop\build-testingqtrelease-Desktop_Qt_5_11_2_MSVC2017_64bit-Release\release\testingqtrelease.exe

, что приводит к этому

enter image description here

при попытке запустить exe я получаю сообщение об ошибке.

enter image description here

Итак, я провел небольшое исследование и обнаружил, что многие источники говорят о копировании разных dll из mingw730_64, но ни один из них не работает для меня. Я новичок в QT, поэтому я не уверен, что делаю простую ошибку.

Любая помощь будет принята с благодарностью. Спасибо.

Ответы [ 3 ]

0 голосов
/ 15 ноября 2018

Вы пробовали средство развертывания Qt Windows?http://doc.qt.io/qt-5/windows-deployment.html Вы перетаскиваете исполняемый файл вашей программы через инструмент WinDeploy.exe, затем он разрешает все что угодно.Для linux тоже есть подобное.

0 голосов
/ 15 ноября 2018

ок, я решил, видимо команда windeployqt.exe C:\Users\rober\Desktop\build-testingqtrelease-Desktop_Qt_5_11_2_MSVC2017_64bit-Release\release\testingqtrelease.exe не работал из-за несовместимости версий между версией сборки qt и windeployqt.exe

, чтобы найти правильную версию, проверьте настройки сборки: enter image description here

и перейдите к версии qt и найдите «windeployqt.exe»

шахта была расположена здесь: F:\QT\5.12.0\msvc2017_64\bin

Теперь просто перетащите скомпилированный исполняемый файл qt в "windeployqt.exe", и он должен загрузить соответствующие DLL

0 голосов
/ 15 ноября 2018

Я предлагаю вам использовать Qt, созданную с msvc 2015 32, чтобы приложения Qt работали на Windows 2012 (32/64) до сих пор и Windows 7 (32/64) до сих пор, но это не ответ вашего вопроса.

Чтобы помочь вам узнать, какие библиотеки являются обязательными, используйте приложение windeployqt в подпапке bin инфраструктуры Qt. Передавая в качестве аргумента ваш exe, утилита скопирует необходимые dll и плагины в вашу подпапку exe. После, пожалуйста, посмотрите файл qt.conf. Это файл, используемый приложением Qt, чтобы узнать, где хранятся плагины и другие материалы.

Пожалуйста, попробуйте скачать это https://github.com/denisgottardello/BackupTo и посмотрите на файл qt.conf, файл ресурсов и файл .pro.

...