WindowsでターゲットとするオープンソースのQtをダウンロードしました。VS2010コマンドプロンプトを使用してインストールを行っているため、プラットフォームが自動的にmsvc-2010に設定されます。nmakeを使用してビルドしようとすると、インストールが完了するまでに約7〜8時間かかりました。その過程で、Qtがjavascriptのように不要なライブラリをコンパイルしていることに気づきました。
デスクトップ開発に重点を置いているので、ビルドプロセスを短縮するにはどうすればよいですか?
WindowsでターゲットとするオープンソースのQtをダウンロードしました。VS2010コマンドプロンプトを使用してインストールを行っているため、プラットフォームが自動的にmsvc-2010に設定されます。nmakeを使用してビルドしようとすると、インストールが完了するまでに約7〜8時間かかりました。その過程で、Qtがjavascriptのように不要なライブラリをコンパイルしていることに気づきました。
デスクトップ開発に重点を置いているので、ビルドプロセスを短縮するにはどうすればよいですか?
jom
@tiburが言ったように、「並列nmake」の一種であるを使用できます。Qtのconfigureにいくつかのオプションを渡すこともできます。そのうちのいくつかは次のとおりです。
-release
または-debug
:リリースまたはデバッグバイナリのみをビルドする-nomake demos
、、:うまく構築しない、デモ、例、またはツール-nomake examples
。-nomake tools
-no-webkit
、、、:特定のQtモジュールを無効-no-qt3support
に-no-script
します。-no-scripttools
もっとあるかもしれません、configure.exe --help
あなたに利用可能なすべてのオプションを教えてくれます。
最も時間がかかる1つの大きなライブラリはwebkitです。Webkitが必要ない場合は、合格できます
-no-webkit
ビルド時間は大幅に短縮されます。他のほとんどのフラグ(-nomakeデモ、-nomakeの例、rubenvbの回答を参照)は、比較するとマイクロ最適化です。
jomを見てください。
jomは、複数の独立したコマンドの並列実行をサポートするnmakeのクローンです。GNUmakeと同様の-jコマンドラインスイッチを追加します。
vcprojファイルをビルドするようにQtを構成してからvcbuild
、/M4または/M8オプションを使用して、マルチスレッドビルドをサポートするものを使用します。
/ M
<number>
可能であれば、実行する同時ビルドの数を指定します
devenv.com
IDEオプションで構成している場合は、どのビルドと同時にビルドすることもできます。
これらは両方ともjom
、明らかに似ていますが、これは他に何もインストールしなくても機能します。