2012-03-29 13 views
11

4.8.0がリリースされているので、私はQtを再インストールしました。今はcmakeも使いたいと思います。 cmakeを動作させるために、Qt4.7.3のPINGにmingw binフォルダ(QtSDK\Desktop\Qt\4.7.3)を追加しなければならないことを覚えています。だから今はQtSDK\Desktop\Qt\4.8.0に似たフォルダがあると思いましたが、これはそうではありません。私の質問は、他の誰かがQtとcmakeを立ち上げる経験がありますか?私はちょっとgoogledして、cmakeの仕事をする方法を見つけることができませんでしたので、私は今、いくつかの助けを使用することができます。cmakeが見つからないQt4

構築しようとすると、私はこのよく知られたメッセージが表示されます:

CMake Error at C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:91 (MESSAGE): 
    Could NOT find Qt4 (missing: QT_QMAKE_EXECUTABLE QT_INCLUDE_DIR) 
Call Stack (most recent call first): 
    C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:252 (_FPHSA_FAILURE_MESSAGE) 
    C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindQt4.cmake:1171 (FIND_PACKAGE_HANDLE_STANDARD_ARGS) 
    CMakeLists.txt:3 (find_package) 
+0

QT_ROOT環境変数(C:\ Qt \ 4.8.0 \が自分のマシンに設定されていること)を確認していなければなりませんでした。 – tmpearce

+0

@tmpearce:CMakeLists.txtの意味は?そうでない場合は、これを行う方法を追加できますか? – Neko

+0

私はあなたがウィンドウ内にいると仮定するために "c:\ ..."パスを外しています。右クリック - 「マイコンピュータ」コンテキストメニューから、「環境変数」へのあなたの道を見つけることができます。 Googleにもっと助けが必要な場合は、ここに自宅にWindowsがありません。必要に応じて(最初のコメントで説明したような)新しい環境変数(「PATH」は通常は1つ)を作成することができます。 – tmpearce

答えて

4

を実行して設定しcmake-gui ..\..\source\project

  • 、私が問題だったのかを発見し、私は私が前に知られているべきだと思います。私は単にPATH変数にC:\QtSDK\Desktop\Qt\4.8.0\msvc2010\binを追加しました。デフォルト4.8.0のインストールでqmakeはにあり、4.7.3ではC:\QtSDK\Desktop\Qt\4.7.3\mingw\binであることに注意してください。違いに注目してください。 msvc2010mingwmsvc2010がそのディレクトリ内の唯一のフォルダだったので、実際にはっきりと明らかです。

    私がskyhisiの答えを必要としなくなったので、私は試しませんでしたが、それは別の正しい(より良いとは限りませんが)cmakeを動作させる方法であると推測しています。

  • 8

    あなただけQT_QMAKE_EXECUTABLEでqmakeのためにパスを設定する必要があり、その後、cmakeのは(それが必要とする他のすべてのパスを見つけるためにqmake -queryを使用することができますLinuxのpkg-configに似ています)。

    ステップQtとCMakeのを使用してプロジェクトを構築するため、通常は以下のとおりです。

    1. チェックアウト/プロジェクトのソースフォルダを作成し
    2. スタートQtは、プロンプト/ cmdcdコマンドプロジェクトフォルダの外にビルドフォルダを作成します。例:ビルドフォルダへcd build\project
    3. 実行元のフォルダへのcmakeまたはguake-guiのパス。このようQT_QMAKE_EXECUTABLECMAKE_BUILD_TYPE
    4. として任意の変数が、ビルドツールを実行し、またはそうcmake --build .
    +0

    VTK命令は '-DQT_QMAKE_EXECUTABLE:PATH =/path/to/qmake'フラグを使用すると言いますが、これは私のためには機能しません。 –

    2

    はちょうどあなたがいずれかのことができALTERレジストリキー、または、私は個人的に完全にすべてのこれらのキーを削除することを好むし、$ ENV {QTDIRを変更findQt4.cmake

    FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 qmake-mac PATHS 
        "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" 
        "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" 
        "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin" 
        $ENV{QTDIR}/bin 
        DOC "The qmake executable for the Qt installation to use") 
    

    を見てみましょう...同じ問題に遭遇しました}変数。がんばろう。

    +0

    多くの感謝!私はちょうど4.8.5-vs2010をアンインストールし、4.8.5-mingwをインストールしました。インストーラは何かを壊しました。 'findQt4.cmake'ファイルをトレースしましたが、問題が見つかりませんでした。あなたの投稿は、HKCUの「Versions」に私を指摘しました。どういうわけかインストーラが間違ったアカウントの下にエントリを入れたことが判明しました!私は、インストーラを2番目のデスクトップではなく、「私自身」として実行していることは間違いありません。とにかく、私は 'Versions'をそのsecond-accountから私のものに移しました。そしてcmakeはQt4を正しく見つけました。また、キーをHKLMにグローバルに置くことは機能しません。 – quetzalcoatl

    2

    少し違う理由でこの問題が発生しました。おそらくこれが他の人に役立つでしょう:

    私はQt 4.8.3をアンインストールしてからqt 4.8.4をインストールしました。

    [HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\DefaultVersion] 
    

    これはまだ他のすべてのレジストリエントリが4.8.4にアップデートされていても4.8.3に設定した変更:。スラヴァの答えに基づいて、私はcmakeのはから$(qt_install_version}の値を取得していることを発見しましたDefaultVersionキーの値を4.8.4に設定すると問題が解決しました。

    0

    私は同じ問題を抱えていたと私はバイナリがQT_QMAKE_EXECUTABLEの値として要求される要求qmakeのは、私のOSのために、ある/usr/local/Trolltech/Qt-4.8.7/bin に保存されている一方で、Macの

    QT_QMAKE_EXECUTABLE /opt/qt-4.8.7/bin/qmake 
    

    をqmakeのパスを提供する解決し、パス/opt/qt-4.8.7/bin/qmakeに格納されます。また、このヘルプを期待してください。

    関連する問題