0
成功運行配置腳本之後(見Building Qt 5.8 from source - configure: Unknown command line option '-c++11')我就開始構建:構建Qt 5.x的 - ICU unicode的頭失蹤
mingw32-make.exe -j 4
但我得到了以下錯誤一段時間後, :
In file included from C:/msys64/home/asp/qt5/qtbase/src/xml/dom/qdom.cpp:55:0:
../../../include/QtXml/5.8.1/QtXml/private/qxml_p.h:1:85: fatal error: ../../../../../../../../../../../home/asp/qt5/qtbase/src/xml/sax/qxml_p.h: No such file or directory
#include "../../../../../../../../../../../home/asp/qt5/qtbase/src/xml/sax/qxml_p.h"
我搜索的文件,它就是它應該是:
ls ~/qt5/qtbase/src/xml/sax/
qxml.cpp qxml.h qxml_p.h sax.pri
這是Qt 5.8.1的問題,還是我忘了設置一些選項?我會嘗試5.7,但我不希望有更好的結果。
5.7配置腳本沒有顯示成功消息:
Creating qmake...
...........................................................................................Done.
Info: creating stash file C:\msys64\home\asp\qt-build\.qmake.stash
Info: creating super cache file C:\msys64\home\asp\qt-build\.qmake.super
有了Qt 5.8有一個消息:
Qt is now configured for building. Just run 'make'.
Once everything is built, you must run 'make install'.
Qt will be installed into 'C:\msys64\opt\qt'
但也許這是正常的,所以我就開始構建:
mingw32-make.exe -j 4
cd qtbase/ && (test -e Makefile || C:/msys64/home/asp/qt-build/qtbase/bin/qmake.exe -o Makefile C:/msys64/home/asp/qt5/qtbase/qtbase.pro) && C:/msys64/mingw64/bin/mingw32-make -f Makefile
Info: creating cache file C:\msys64\home\asp\qt-build\qtbase\.qmake.cache
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/qt_docs_targets.prf:31: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/qt_docs_targets.prf:31: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/qt_docs_targets.prf:31: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/qt_docs_targets.prf:31: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/qt_docs_targets.prf:31: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/qt_docs_targets.prf:31: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/qt_docs_targets.prf:31: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/qt_docs_targets.prf:31: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/qt_docs_targets.prf:31: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/testcase_targets.prf:4: 'prepareRecursiveTarget' is not a recognized test function.
C:/msys64/home/asp/qt5/qtbase/mkspecs/features/testcase_targets.prf:13: 'prepareRecursiveTarget' is not a recognized test function.
Unknown generator specified: DUMMY
mingw32-make[1]: Entering directory 'C:/msys64/home/asp/qt-build/qtbase'
mingw32-make[1]: Makefile: No such file or directory
mingw32-make[1]: *** No rule to make target 'Makefile'. Stop.
mingw32-make[1]: Leaving directory 'C:/msys64/home/asp/qt-build/qtbase'
Makefile:75: recipe for target 'module-qtbase-make_first' failed
mingw32-make: *** [module-qtbase-make_first] Error 2
所以5.7是不可替代的。
我已經嘗試其他版本的Qt Downloads:
- QT-比比皆是 - 開源-SRC-4.8.7.tar.gz
- QT-比比皆是 - 開源-SRC-5.6.0.7z
- QT-比比皆是 - 開源-SRC-5.6.2.7z
- QT-比比皆是 - 開源-SRC-5.7.0.7z
- QT-比比皆是 - 開源-SRC-5.7.1.7z
- QT-比比皆是-ope nsource-src-5.8.0.7z
所有版本都失敗,因爲找不到來自unicode子文件夾的一些ICU頭。但是我觀察到一件奇怪的事情:如果我在相應的文件夾中手動啓動失敗命令,則會生成輸出而不會出錯!然後我可以再次開始製作並在幾個文件後重復此過程。但我不能做到全構建這樣...
你有什麼成功?我現在處於相同的情況,但尚未完全獲得MINQW的方式... –