CMake の新機能の使用 (VS2017)
Incredibuild は Visual Studio 2017 の新しい CMake 機能に対応していません。ここではコマンドラインで新機能を使用する方法をみていきます。
CMake のサンプル プロジェクト (https://www.codeproject.com/Articles/1181455/A-CMake-tutorial-for-Visual-Cplusplus-developers) を使って試すことができます。
サンプル プロジェクトで可能な処理は、ご使用の CMake ファイルやソリューションにも適用できます。
生成:
-
プロジェクトをダウンロードしてファイルをすべて同じフォルダにコピーします。
-
Visual Studio に該当のフォルダを読み込みます。CMake では新規ファイルが自動で生成されますが、CMake の出力を Visual Studio にコピーする必要があります。
-
CMake の出力に記載されたフォルダに以下のコマンドが生成されます。C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\CMake.exe" -G "Ninja" -DCMAKE_INSTALL_PREFIX:PATH="C:\Users\Beelal\CMakeBuilds\4ad98d3d-1ddb-bf3a-b858-3709d1a407c1\build\x86-Debug\install" -DCMAKE_BUILD_TYPE="Debug" -DCMAKE_MAKE_PROGRAM="C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\Ninja\ninja.exe" "C:\Users\Beelal\Desktop\cmakedemo\cmakedemo\src- Save the command as "generation_command.bat"
-
上記コマンドを Incredibuild で実行するために XML プロファイルを作成して、(生成されたコマンドを含む) 2 番目のビルドコマンドを作成します。
-
以下のコマンドを入力して元のコマンドを Incredibuild と「ラップ」します。
-
"ibconsole /command="generation_command.bat" /profile="profile.xml" /openmonitor"
-
バッチ ファイル「ib_command.bat」を作成すれば、次回から手動でコマンドを入力する必要がなくなります。
-
-
上記を実行すると、Incredibuild が関連するソリューションを生成します。
ソリューションのビルド:
-
上記手順でソリューションが生成されたら、Incredibuild でソリューションを高速にビルドします。
-
「C:Users\Beelal\CMakeBuilds\4ad98d3d-1ddb-bf3a-b858-3709d1a407c1」に格納されたプロジェクトに対して以下のコマンドを使用します。
-
"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\CMake.exe" --build "C:\Users\Beelal\CMakeBuilds\4ad98d3d-1ddb-bf3a-b858-3709d1a407c1\install\x86-Debug" --clean-first -- "-v"
-
コマンドを「build_command.bat」として保存します。
-
-
以下のコマンドを使って Incredibuild でビルドします。
-
buildconsole /command="build_command.bat"
-
-
これで Incredibuild を使って CMake ソリューションをビルドできるようになります。