macOSでKataGoをコンパイルする。
[主題]
macOSでHomebrewを使わずにKataGoをコンパイルする手順を説明したい。
[背景]
KataGoとは、AIの技術を用いたコンピュータ囲碁プログラムである。詳しくはウィキペディアの記事を参照されたい。
本ブログエントリは、KataGoのコンパイルについて、本家でもHomebrewを推奨しているのを、敢えて使わない選択をしたものである。
[環境]
参考までに、筆者の環境を記載しておく
MacBook Air 2023 15inch(Apple Silicon Mac)
macOS Tahoe 26.1
Xcode 26.1.1
CommandLine Tools for Xcode 26.1.0.0.1
[手順]
-
cmakeのコンパイルとインストール
cmakeのダウンロード(共通)
curl -LO https://github.com/Kitware/CMake/releases/download/v4.1.2/cmake-4.1.2.tar.gz tar xf cmake-4.1.2.tar.gz cd cmake-4.1.2JRE、JDKがインストールされていない場合は、以下を実行する。
rm Modules/FindJava.cmake curl -OJL "https://docs.google.com/uc?export=download&id=0B2uOKVwFe1AXU1QzdXlvc0VRSEU" patch -p1 < cmake_CMakeLists.patchcmakeのコンパイル(共通)
./bootstrap; make -j$(sysctl -n hw.ncpu); sudo make install -
libzipのインストール
curl -LO https://libzip.org/download/libzip-1.11.4.tar.xz tar xf libzip-1.11.4.tar.xz cd libzip-1.11.4 mkdir -p build cd build cmake .. make sudo make install -
KataGoコンパイル方法の選択
katagoは、バックエンドに用いるライブラリにより、コンパイル手順がやや異なる。ここでは、eigenを用いる場合と、OpenCLを用いる場合を紹介する。バックエンドにeigenを用いる場合
-
eigenのインストール
curl -LO https://gitlab.com/libeigen/eigen/-/archive/5.0.1/eigen-5.0.1.tar.bz2 tar xf eigen-5.0.1.tar.bz2 mkdir -p eigen_build cd eigen_build cmake ../eigen-5.0.1 make -j$(sysctl -n hw.ncpu); sudo make install cd /usr/local/include sudo ln -sf eigen3/Eigen Eigen sudo ln -sf eigen3/unsupported unsupported -
katagoのコンパイル
curl -LO https://github.com/lightvector/KataGo/archive/refs/tags/v1.16.4.tar.gz tar xf v1.16.4.tar.gz cd KataGo-1.16.4/cpp cmake . -DUSE_BACKEND=EIGEN -DNO_GIT_REVISION=1 make -j$(sysctl -n hw.ncpu)
バックエンドにOpenCLを用いる場合
-
katagoのコンパイル
curl -LO https://github.com/lightvector/KataGo/archive/refs/tags/v1.16.4.tar.gz tar xf v1.16.4.tar.gz cd KataGo-1.16.4/cpp cmake . -DUSE_BACKEND=OPENCL -DNO_GIT_REVISION=1 make -j$(sysctl -n hw.ncpu)
-
-
KataGoのmakeが終わると、ビルドしたディレクトリ(cpp)に
katago
という名前の実行ファイルができる。これをコピーして用いる。また、以下のディレクトリに設定ファイル(gtp_example.cfg)があるので、これもコピーしておく。KataGo-1.16.4/cpp/configsKataGoの実行には、他にneuralnetsと呼ばれるファイルが必要である。これについては、別記事で述べる。
以上。
この投稿へのトラックバック
トラックバックはありません。
- トラックバック URL
この投稿へのコメント