5

私はqmakeを使用して、開発中の小さなQtC++アプリ用のMinGW32Makefileを生成しています。私の問題:これらのデュアル/クアッドコアCPUはすべて、1つのスレッドだけが構築を行っている間、アイドル状態でそこに座っています。並列化するために--jobs4を渡してmakeを実行しようとしましたが、問題は、qmakeが汎用makefileを生成し、その内部でmakeが-fを使用して再度呼び出されることです。

makefileを生成するときにqmakeにmakeのオプションを追加させることは可能ですか?または、qmakeの外部でオプションを設定する別の方法がありますか?ビルドごとに自動生成されるため、特定のMakefileを編集できません。

4

3 に答える 3

18

オプションを渡すための悪用$MAKEは、すべての場合に機能するとは限りません。多くの場合 (Unix 上の Qt の configure スクリプトなど) "$MAKE"、コマンドにスペースを含めることができるように、二重引用符 ( ) で囲みます。機能しなくなる前に同じトリックを使用したので、私は知っています。Qtサポートは、(当然のことながら)次のように使用することを提案$MAKEFLAGSしました

set MAKEFLAGS=-j4
make
于 2009-08-08T09:20:59.130 に答える
3

これは私のために働く:

MAKE_COMMAND=mingw32-make -j%NUMBER_OF_PROCESSORS% を設定します。

于 2010-02-18T01:24:39.767 に答える
2

一般的な Makefile は$(MAKE)make を呼び出すときに使用するため、環境変数を使用して上書きできます。このような何かがそれを行う必要があります:

  qmake
  make MAKE="mingw32-make -j4"

もちろん、必要に応じて値を置き換えますMAKE:)

于 2009-08-07T21:57:15.590 に答える