【发布时间】:2016-09-24 14:16:54
【问题描述】:
我正在 Linux 上开发一个 Qt 程序,我也想在 Windows 上发布它。 Windows 的编译和静态链接可以很好地与 MXE(安装了 qtbase)配合使用,但我想动态链接我的程序。
动态链接有效,程序在 Wine 下运行,但是当我将 EXE 和 DLL 复制到 Windows 时,程序给出错误:“此应用程序无法启动,因为它无法找到或加载 Qt 平台插件“windows” “”。'
在 Windows 上,windeployqt 将应用程序运行所需的所有内容整齐地放在一个文件夹中。有没有办法让这个工具(或类似工具)在 Linux 上运行?
【问题讨论】:
-
使用 Windows 虚拟机不是更简单吗?
-
这部分是出于原则,部分是为了方便。我在哪里可以获得免费的 Windows 副本?
-
我想我记得。这是关于捆绑
platform-somrthing.dll并验证平台插件的搜索路径是否设置正确。错误消息表明它未设置,因此它可能正在当前目录中查找它。你复制了什么dll? -
libbz2.dll libgcc_s_sjlj-1.dll libharfbuzz-0.dll libintl-8.dll libpcre-1.dll libstdc++-6.dll Qt5Gui.dll zlib1.dll libfreetype-6.dll libglib-2.0 -0.dll libiconv-2.dll libpcre16-0.dll libpng16-16.dll Qt5Core.dll Qt5Widgets.dll
-
您还将 qwindows.dll 放在一个名为“platforms”的子目录中。请参阅deployment documentation 中的示例。
标签: linux windows qt deployment cross-compiling