2016-11-13 77 views
1

如何在Ubuntu上構建Qt 5.7.0以交叉編譯爲Windows?如何構建Qt 5.7.0進行交叉編譯?

我有這樣的錯誤:

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。

回答

0

不知道這是否是正確的解決方法,但似乎Qt試圖構建ActiveQt(這是純Windows)作爲本機之一的工具之一。

我在這裏編輯這個文件:

qtactiveqt/src目錄/工具/ IDC/idc.pro

,並評論了兩個第一線,這似乎解決問題。

(我也有binfmt配置爲通過wine運行.exe文件,這可能會影響它是否嘗試運行idc工具作爲本機工具)