2017-08-14 24 views
0

Qtバージョン5.5.1(ただしGUIは5.6.1)を使用していますが、MSVC++コンパイラ10.0でコンパイルしています。 Options - > Build & Run-> Generalメニューで、nmakeの代わりにjomオプションを使用します。私はcmakeの最新バージョンを使用しています。オプション - >ビルド&実行 - >キット - > CMakeジェネレータは "CodeBlocks - NMake Makefiles"に設定されています。正直言って、私は最後のオプションが何をしているのかわからない、それはちょうどデフォルトです。Qt Creator Windows 10 - "nmakeの代わりにjomを使用する"が動作しない

QTクリエイターIDEを使ってビルドして実行しています。

私はプロジェクトの中で、「ツールの引数」に-j追加する場合 - > &ファイル名を指定して実行をビルド - >ビルドステップ私がコンパイルしようとすると、私はエラーを取得する:

NMAKE:-1: error: U1065: invalid option 'j' 

しかし、私は "持っています選択されたnmakeの代わりにjomを使用するようにしてください。そうすれば、jomを使用してこの引数を受け入れるべきでしょうか?

私はステップを逃しましたか?

これを行う方法がわかりません。また、jomを使用してコンパイルするためのチュートリアルはコマンドラインからコンパイルしていますが、これは実行したくありません。

編集:これは具体的には、(この質問の回答として提案された)Jomソリューションが私の設定とうまくいかない理由を尋ねるので、How do I utilise all the cores for nmake?とは異なる質問です。

編集2:私はなぜそれが分かったのでしょうか? This bug reportはキット - > cmakeジェネレータオプションで"CodeBlocks - NMake Makefiles JOM"オプションを使用する必要があることを示唆しています。これはQtCreator 4.2.1以上でのみサポートされています。しかし、私はこれを持っており、それはまだ動作しません。私は今のエラーを取得:

C:\Program Files\CMake\share\cmake-3.8\Modules\CMakeTestCCompiler.cmake:51: error: The C compiler "C:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin/cl.exe" is not able to compile a simple test program. It fails with the following output: Change Dir: C:/GIT/CorteX/build/Debug/CMakeFiles/CMakeTmp 
+0

@ usr1234567これは重複していない理由を説明しました。 – Blue7

答えて

1

NomakeファイルはJomによってネイティブに使用することができます。したがって、cmakeジェネレータはビルド構成のデフォルトnmakeジェネレータから変更する必要はありません。 cmakeジェネレータは、あなたのcmakeをネイティブビルドシステムフォーマット(例えば、make、nmake)に変換するものです。

(Projects> Manage Kits ...> Build & Runs> Kits)あなたのキットを選択してください。私は自分のCmakeジェネレータを持っています: "CodeBlocks - Nmake Makefiles、Platform:、Toolset:"

変更する必要があるのは、カスタムビルドステップを追加してjom.exeを実行し、デフォルトビルドステップを無効にすることです(Qtcreator JOM setup)。

N.b. jom.exeはQtCreatorがPATH変数に入っていなければなりません。

0

JOMは、例えば、あなたがプロセスの数を設定すること-jを必要とし、 jom -j4。カウントなしで-jだけを使用することはできません。

関連する問題