私はWindowsとQt CreatorとCMakeを使用しています。並列コンパイルのためにQT Cmakeプロジェクト用のジェネレータを設定する方法はありますか?
Qtが使用するデフォルトジェネレータ、nmake Makefilesを使用してプロジェクトをビルドすることができました。残念ながら、ビルドは1つのコアしか使用しません。生成されたmakefileを見ると、$ MAKEFLAGSという変数がありますが、それを変更する方法はわかりません。私は、Qt Creatorのビルド設定の下でcmakeコマンドに-DMAKEFLAGS = -jを追加しようとしましたが、CMakeはそれを理解しません。
私が理解できないもう1つの側面は、Qt CMakeビルドディレクトリに行き、同じコマンドを実行できないということです。コマンドQt Creatorが使用していることを教えてください:
cmake.exe --build。 --targetすべて
が、私はCMDウィンドウ内でこれを実行するとき、NMAKEを見つけることができない私に教えているようだ:
C:プロジェクト\ Gitは\ \ - AO3D-Desktop_Qt_5_7_0_MSVC2015_64bit-デフォルトの構築> cmakeの - -build。 --target all 指定されたファイルが見つかりません CMakeエラー:ジェネレータ:makeの実行に失敗しました。 "nmake" "/ NOLOGO" "all"
nmakeを見つけるためにファイルシステムを検索しましたが見つかりませんでしたが、Qt Creatorはこの同じビルドコマンドをこの同じフォルダで実行できます。
まとめ:複数のコアを使用するにはどうすればよいですか?私にはより良い発電機がありますか? Qtがコマンドラインで使用しているビルドコマンドを使用してビルドできないのはなぜですか?
QTクリエーターのインストールディレクトリに存在する必要があります。確認しましたか? – PnotNP
nmakeはQtの一部ではなく、MSVC/Visual Studioの一部です。 VS2015コマンドプロンプトまたはソースvcvarsall.batからビルドします。あなたが呼びたいものはjom.exeですが、それは作成者が付属しており、パラレルビルドを行うnmakeのドロップイン置換です。また、忍者を見てください。 –
ありがとう - 私は間違いなくjom nmakeに切り替えることを目標にしています。 –