c++ - QT 使用 MinGW 启用交叉编译(预编译)

标签 c++ linux qt qt-creator cross-compiling

大家好

一段时间以来,我一直在寻找一种在 Linux 中交叉编译 QT-Creator 的方法,但遇到了很多麻烦。

背景信息

请注意:我在 Linux 机器上,想交叉编译 Windows 应用程序

我的系统:

  • Ubuntu Gnome 16.10
  • QT Creator 4.0.2(基于 QT 5.7)

我遇到过一些 SO links ,一些带有错误说明的博客等和one看起来很有帮助,但找不到依赖项。

我还尝试了另一个编译器 MXE并克隆并尝试从 GIT repo 构建 MXE 编译器, 失败了(没有构建错误的解决方案 - VTK 构建错误)

我决定下载precompiled MinGW compilers (i686 和 x86_x64 版本)来自 sourceforge

问题:

在QT Creator中,添加编译器没有问题,添加“Kit”并选择新添加的编译器,红色感叹号表示错误

The Compiler (x86_windows_msys_pe_64bit) cannot produce code for QT version 5.7.0 GCC 64Bit (x86_linux_generic_elf_64bit)

32 + 64 位编译器都会出现这种情况。

最佳答案

我认为您应该有一个与您的编译器 ABI 相匹配的 QT 版本。该错误告诉您 MinGW 编译器与您使用的 QT 的 Linux 版本不匹配。因此,获取 Windows 版本的 QT 并改用它(就像添加 WinGW 一样)。

您可以从 here 下载 Qt 二进制文件.

关于c++ - QT 使用 MinGW 启用交叉编译(预编译),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40567219/

相关文章:

c++ - 方法返回的幕后是什么?

c++ - 删除命令提示符

c - fcntl Unix/Linux系统调用的全称是什么

在析构函数中的 main 之后无法读取 exit_code

c++ - 在 C++ 中 -> 是什么意思?

c++ - 使用 RE2::GlobalReplace 转义字符串

c++ - 如何使概念失败并显示自定义错误消息(C++ 20)

linux - 如何使用 linux find 命令清理所有 Maven 项目?

visual-studio - 使用 Visual Studio 的 QNetworkAccessManager 问题

c++ - 连接 : No such Slot QTreeView