我最近使用本指南在Linux上交叉编译Windows程序:Building Qt 5 on Linux, for Windows
但是,当我编译程序时,创建的可执行文件已损坏,并且不运行该程序。相反,有一个错误,只有关闭它的选项。如果有人能够提供答案,为什么它这样做,将不胜感激。下面我将列出几个事实。请具体说明您的答案(例如,如果原因是我可能使用了GUI不具备的内容,请提供操作系统之间无法使用的示例)我在如果我要求对答案作进一步解释,那么在使用Qt时大约是中级入门级别,请提前原谅我。
从最初的发布时间开始,我可能需要几个小时才能跟进。提前感谢所有投入积极意见的人。
答案 0 :(得分:0)
我成功地在ArchLinux for Windows上交叉编译了一个程序
你的Windows机器上有所有必要的dll吗?
这是我的目录中的清单:
platforms <DIR>
- qminimal.dll
- qwindows.dll
sqldrivers <DIR>
- qsqlite.dll
icudt51.dll
icuin51.dll
icuuc51.dll
libgcc_s_dw2-1.dll
libstdc++-6.dll
libwinpthread-1.dll
Qt5Core.dll
Qt5Gui.dll
Qt5Sql.dll
Qt5Widgets.dll
拥有所有dll的正确版本也至关重要。这些必须与用于交叉编译的MinGW版本匹配。平台目录及其两个dll也是必需的。对于我的应用程序,我还需要SQLite支持,因此需要使用所需的dll创建另一个子目录。