【问题标题】:How to build Qt 5.7.0 for cross compilation?如何构建 Qt 5.7.0 进行交叉编译?
【发布时间】:2016-11-13 05:58:08
【问题描述】:

如何在 Ubuntu 上构建 Qt 5.7.0 以交叉编译到 Windows?

我有这个错误:

In file included from qt-everywhere-opensource-src-5.7.0/qtbase/include/QtCore/qt_windows.h:1:0,
             from main.cpp:33:
qt-everywhere-opensource-src-5.7.0/qtbase/include/QtCore/../../src/corelib/global/qt_windows.h:61:21: fatal error: windows.h: No such file or directory

我的配置选项:

./configure -opensource -c++std c++11 -xplatform win32-g++ -device-option CROSS_COMPILE=i686-w64-mingw32- -device-option PKG_CONFIG=i686-w64-mingw32-pkg-config -force-pkg-config -prefix /opt/qt/qt-5.7.0-win32 -nomake examples

windows.h 有路径:/usr/i686-w64-mingw32/include/windows.h

注意:我不想使用 MXE。

【问题讨论】:

    标签: c++ linux qt5 cross-compiling


    【解决方案1】:

    不确定这是否是正确的解决方法,但似乎 Qt 试图将 ActiveQt(仅限 Windows)下的工具之一构建为本机。

    我在这里编辑了这个文件:

    qtactiveqt/src/tools/idc/idc.pro

    并注释掉前两行,这似乎解决了问题。

    (我也确实将 binfmt 配置为通过 wine 运行 .exe 文件,这可能会影响它是否尝试将 idc 工具作为本机工具运行)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多