Skip to content

箱庭関連のリポジトリをVisual Studioでビルドするテクニック集(Core Pro編)

箱庭関連のリポジトリをクーロン後、Windows 11のVisual Studio 2022 Communityでビルドする場合の外部パッケージ利用Warningビルドエラーを対処する方法を記載しておきます。

事前にvcpkgの導入をしておいてください。

vcpkg導入手順

箱庭関連のリポジトリ用の外部パッケージ利用

vcpkgがインストールできたら、箱庭関連のリポジトリで利用する外部パッケージをインストールしておきます。 箱庭関連のリポジトリ更新状況によって、必要な外部パッケージは変わりますので、随時対応をしてください。

PS D:\source\repo\vcpkg> .\vcpkg.exe install rapidjson:x64-windows # json関連のパッケージ
PS D:\source\repo\vcpkg> .\vcpkg install gtest:x64-windows # GTest関連のパッケージ

箱庭関連のリポジトリでのWarning、ビルドエラー対処テクニック

Visual Studio 2022 Communityを利用したビルド対処方法ですので、Visual Studio 2022 Community以外のビルド方法では不要です。

Visual Studio 2022 Communityで箱庭関連のリポジトリがあるフォルダを開きます。開いたら、構成を管理します…でCMakeSetting.jsonを開きます。

CMakeSettings.json

windows用のCMakeオプション指定

Windows環境用のCMakeオプション指定を追加します。これを指定しないとVisual Studioからビルドができないので必ず追加してください。

-DHAKO_CLIENT_OPTION_FILEPATH="cmake-options\win-cmake-options.cmake"

Windows用のCMakeオプション指定

shakocの共有ライブラリ化

Unity版、Godot版のビジュアライズ環境で利用するshakoc.dllを作成するためのオプションを追加してください。Windowsのみ必要です。

-DHAKO_WIN32_SHARED_LIBS=ON

GTestの無効化

vcpkgでGTestをインストールした場合は対処はいりません。もしくは、GTestなんてやりたくないな…などがあれば対処してください。

x64-Debug、x64-Releaseの両方のコマンド引数のCMakeコマンド引数に-DHAKO_ENABLE_GTEST=OFFを追加します。

GTest無効化

CMakeでのinstall利用時のパス正規化

CMakeList.txtでinstallを指定している場合にWarningが出ることがあります。この場合、CMP0177を有効にして、install時のパス指定を正規化するように指示をします。CMake3.2以上を利用する場合には推奨される設定とのことです。(Copilot談)

CMP0177対処前のWarning

各CMakeList.txtに以下を追加することで、Warningを対処することができます。気になるようなら指定してください。

CMakeList.txtの先頭位置くらいに以下を追加するようにしてください。

if(POLICY CMP0177)
  cmake_policy(SET CMP0177 NEW)
endif()