【Windows】C++チュートリアルのビルドと実行(CMake、Visual Studio)

  • WindowsでCMakeとVisual Studioを使ったAGXのC++チュートリアルのビルド手順について説明する。

  • AGXに同梱されている <AGX_DIR>\CMakeLists.txt を使う。

  • 参考文献

  • 確認環境

    • OS: Windows 10 Pro x64

    • AGXバージョン: agx-2.38.0.1-x64-VS2022-double.exe

    • CMakeバージョン: cmake-3.24.3-windows-x86_64.msi

    • Visual Studioバージョン: Visual Studio 2022

前提条件

次のソフトがインストールされていること。

  • CMake 3.10以上

  • AGX Dynamics

  • Visual Studio: AGXのバージョンに合わせたバージョン

CMakeによるVisual Studioプロジェクトの作成

コマンドプロンプトを開く。

次のコマンドを実行して、AGXの環境変数が設定されたcmake-guiを実行する。

<AGX_DIR>\agx_cmd.bat       # プロンプトにAGXの環境変数を設定
cmake-gui                   # cmake-guiを実行

次の項目を設定する。

Where is the source code

CMakeLists.txt がある <AGX_DIR> ディレクトリを指定する。

Where to build the binaries

Visual Studioのプロジェクトを作成するディレクトリを指定する。 AGXはOut-of-Source Buildに対応しているので任意のディレクトリでよい。 例えば、<AGX_DIR>\buildC:\tmp\agxBuild

Configure を選択し、次の項目を設定する。

Specify the generator for this project

Visual Studioのバージョンを指定する。

Optional platform

AGXとVisual Studioと同じプラットフォームを指定する。

その他はデフォルトのままで、 Finish を選択する。

下部のメッセージボックスに 「Configuring done」と表示されることを確認する。

Generate を選択し、Visual Studioプロジェクトを作成する。

Open Project を選択し、Visual Studioを起動する。

Visual Studioによるプロジェクトのビルド

Visual Studioで「ビルド構成」を設定する。例えば RelWithDebInfo

Visual Studioの「プラットフォーム設定」をAGXのプラットフォームに合わせる。例えば x64

ソリューションエクスプローラにある ALL_BUILD プロジェクトを右クリックし、 スタートアッププロジェクトに設定 を選択する。

メニューバーから ビルド ‣ ソリューションのビルド を選択し、ビルドする。

出力ウィンドウに次のメッセージが表示されれば、正常にビルド完了。

========== ビルド: 51 正常終了、0 失敗、0 更新不要、1 スキップ ==========

プログラムの実行

プログラムの実行には2通りの方法がある。

注釈

AGXの環境変数が設定されたプロンプトまたは環境でプログラムを実行すること。 プログラムはAGXの環境変数を利用して、AGXのダイナミックリンクライブラリとリンクする。 環境変数が設定されていないと、プログラム実行時にリンクエラーがでる。

Visual StudioのローカルWindowsデバッガーによる実行

Visual Studioのソリューションエクスプローラから実行するプログラムのプロジェクトを右クリックし、 スタートアッププロジェクトに設定 を選択する。 例えば、 tutorial_bodies

ツールバーの ローカルWindowsデバッガー またはメニューバーから デバッグ ‣ デバッグの開始 を選択する。

実行ファイルの直接実行

AGXの環境変数が設定されたコマンドプロンプト <AGX_DIR>\agx_cmd.bat を開く。

ビルドした実行ファイルのあるディレクトリに移動し、実行ファイルを実行する。 実行ファイルは CMakeのビルドディレクトリ <BUILD_DIR> にある「ビルド構成」名のディレクトリにある。

cd <BUILD_DIR>\RelWithDebInfo
tutorial_bodies.exe