VS2012 x64 用に Qt5.1 をビルドします。Qt を使用してシンプルな UI アプリケーションを構築したいと考えました。残念ながら、CMake にはいくつかのエラー メッセージが表示されます。
CMake Error at C:/thirdparty/vs2012/x64/qt-everywhere-opensource-src-5.1.0/qtbase/lib/cmake/Qt5XmlPatterns/Qt5XmlPatternsConfig.cmake:15 (message):
The imported target "Qt5::XmlPatterns" references the file
"C:/thirdparty/vs2012/x64/qt-everywhere-opensource-src-5.1.0/qtbase/include/QtXmlPatterns/5.1.0"
but this file does not exist. Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
"C:/thirdparty/vs2012/x64/qt-everywhere-opensource-src-5.1.0/qtbase/lib/cmake/Qt5XmlPatterns/Qt5XmlPatternsConfig.cmake"
but not all the files it references.
Call Stack (most recent call first):
C:/thirdparty/vs2012/x64/qt-everywhere-opensource-src-5.1.0/qtbase/lib/cmake/Qt5XmlPatterns/Qt5XmlPatternsConfig.cmake:58 (_qt5_XmlPatterns_check_file_exists)
CMakeLists.txt:59 (find_package)
同じプロジェクトが Qt 5.0.2 と Qt 5.0.1 で動作しました。
Qt5Core_DIR と Qt5Xml_DIR のパスを設定しましたが、Qt5XmlPatterns_DIR が機能しません。Qt lib ディレクトリを見ると、Qt5XmlPatterns が正常にビルドされていることがわかります。デザイナー アプリケーションも実行できます。
この手順を使用して Qt 5.1.0 をビルドします。
- 構成 -developer-build -opensource -nomake の例 -nomake テスト
- nmake
ディレクトリ「C:/thirdparty/vs2012/x64/qt-everywhere-opensource-src-5.1.0/qtbase/include/QtXmlPatterns/5.1.0」が存在しません。ただし、ディレクトリ「C:/thirdparty/vs2012/x64/qt-everywhere-opensource-src-5.1.0/qtbase/include/QtXmlPatterns」は存在します。ディレクトリには、「QtXmlPatternsDepends」というファイルが 1 つだけ含まれています。
何がうまくいかなかったのですか?
更新: Qt Web サイト (MS2012 x64) から提供されたインストーラーを使用しました。ダウンロードしてインストールした後、インストールされたバージョンでプロジェクトをセットアップしようとしました。今回はうまくいきました – Qt 5.1.0 のビルド時に何か問題が発生した可能性があります – しかし、CMake 構成ファイルが間違ったディレクトリ (「qtxmlpatterns」ではなく「qtbase」) を指しているようです – 適切に動作していない何かがあるのかもしれませんQt5XmlPatternsConfig.cmake ファイルで…</p>
2回目の更新: Qt5.1をゼロから再構築しましたが、それでも同じエラーが発生します...
3回目の更新:「C:\ thirdparty\vs2012\x64\qt-everywhere-opensource-src-5.1.0\qtxmlpatterns\include\QtXmlPatterns」ディレクトリから「C:\ thirdparty\vs2012\x64\qt」にファイルをコピーしました-everywhere-opensource-src-5.1.0\qtxmlpatterns\include\QtXmlPatterns" を実行し、QtDeclarative と QtScript についても同じことを行いました
CMake のすべてのエラーはなくなりましたが、コンパイル時にいくつかのヘッダーが見つかりません...