Итак, у меня есть Visual Studio 2013 (версия сообщества) с установленной Qt addt, библиотеками Qt5 (32 бит), и я пытаюсь создать исполняемый файл, который не зависит от всех конфигураций разработки (он может используйте статические или общие библиотеки, на данный момент меня это не волнует).Проблемы с развертыванием приложения Qt5 на окнах
ОС: Windows 7, x64.
Для этого я изменил визуальную студию Solution Confguration
с Debug
до Release
и добавьте все необходимые библиотеки в Configuration Properties -> Linker -> Input -> Additional Dependencies
. Приложение теперь запускается, только если я запускаю его из визуальной среды IDE. Если я попытаюсь запустить его из сгенерированного .exe
, то я получил The application was unable to start correctly (0xc000007b)
.
Я искал и нашел, что этот код ошибки указывает один из следующих проблем:
- 32bit приложение пытается загрузить 64-битную DLL (не мой случай, я думаю, Qt библиотеки DLL являются 32bit (Я установил с помощью этого .exe:
qt-opensource-windows-x86-msvc2013-5.5.0
.), И я использую некоторые другие .DLL, которые также 32 бит). - . Некоторые недостающие библиотеки DLL. (Я скопировал все необходимые Qt DLL в той же папке с окончательным исполняемым файлом).
Для проверки того, что зависимостями мое приложение требует, я открыл файл .exe
с Dependency Walker приложения, это то, что он показывает мне:
в этом списке были также Qt5Multimedia.dll
и Qt5SerialPort.dll
, я избавляюсь от ошибок, копируя .DLLs
в той же папке с .exe
.
Любые идеи, как это решить?
Самостоятельные ответы приветствуются на SO. Но, пожалуйста, разделите вопрос и ответ. Вы можете отредактировать вопрос, чтобы он содержал только вопросную часть и отправлял решение в качестве ответа. В противном случае это будет выглядеть как открытый вопрос, а не как проблема. – Bowdzone
@Bowdzone Сделано. Спасибо, что заметил меня. –