Qt 5.0.2和Mingw 4.7部署

时间:2013-05-23 08:09:57

标签: deployment qt5

我搜索部署我的应用程序。 它使用Qt 5.0.2和Mingw 4.7作为编译器。

我复制了所有的dll:

  • D3DCompiler_43.dll
  • icudt49.dll
  • icuin49.dll
  • icuuc49.dll
  • libgcc_s_sjlj-1.DLL
  • 的libstdc ++ - 6.dll
  • libwinpthread-1.DLL
  • Qt5Core.dll
  • Qt5Gui.dll
  • libGLESv2.dll
  • Qt5Svg.dll
  • Qt5Widgets.dll
  • Qt5Xml.dll

在我的文件夹中。

所有这些dll都是必要的,否则我会收到一条消息" ... .dll manquante"。

现在当我在发布文件夹中启动我的exe时,我收到消息:

" Microsoft Visual C ++运行时库

运行时错误!

程序:... \ release \ test.exe

此应用程序已请求Runtime以不寻常的方式终止它。 请联系应用程序的支持团队以获取更多信息。"

为什么会这样留言?

2 个答案:

答案 0 :(得分:0)

Windows上的Qt5需要qwindows.dll,它应该相对于主可执行文件进行部署,如下所示:

  • {yourAppPath} \ YourApp.exe
  • {yourAppPath} \平台\ qwindows.dll

编辑{yourAppPath} \是插件根目录,所以应该将\ platforms \和其他插件放在那里,而不是像我最初写的那样放在{yourAppPath} \ plugins中。

假设您正在使用Qt Creator并且可以尝试使用MS的Process Explorer来启动您的应用程序,以发现您的应用程序正在加载哪些Qt DLL。

答案 1 :(得分:0)

{qt path} /5.0/mingw491_32/bin有windeployqt.exe。创建此工具以自动收集所有关系