macOSでleela-zeroをコンパイルする。
[主題]
macOSでHomebrewを使わずに、囲碁AI (Leela-Zero)をコンパイルする手順を説明したい。
[背景]
Leela-Zeroは、Lizzie改良版のデフォルト思考エンジンである。コンパイル手順は、パッケージ内に丁寧に書かれているが、英語であり、Homebrewを使う手順である。そこで、日本語で、非Homebrew版のコンパイル手順を書くことにした。
[環境]
参考までに、筆者の環境を記載しておく
MacBook Air 2023 15.3inch(Apple Silicon Mac, M2)
macOS Sonoma 14.6.1
Xcode 15.4
CommandLine Tools for Xcode 15.3.0.0.1
MacBook Pro 2018 15.4inch(インテルMac)
macOS Sonoma 14.6.1
Xcode 15.4
CommandLine Tools for Xcode 15.3.0.0.1
[手順]
cmakeとboostを入れてしまえば、後は拍子抜けするほどに簡単である。
-
cmakeのインストール
curl -LO https://github.com/Kitware/CMake/releases/download/v3.26.6/cmake-3.26.6.tar.gz cd ${CMPL} rm -fr cmake-* tar xf ${SRC}/cmake-3.26.6.tar.gz cd cmake-3.26.6 rm Modules/FindJava.cmake curl -OJL "https://docs.google.com/uc?export=download&id=0B2uOKVwFe1AXU1QzdXlvc0VRSEU" patch -p1 < cmake_CMakeLists.patch ./bootstrap; make; sudo make install
JRE, JDKが入っている環境では、6-8行目の作業は必要ない。
-
Boostのインストール
Boostは C++ の機能を拡張するライブラリのひとつである。Leela-Zeroには、これが必要である。curl -LO https://archives.boost.io/release/1.86.0/source/boost_1_86_0.tar.bz2 cd boost_1_86_0 ./bootstrap.sh sudo ./b2 install -j4
-
Leela-Zeroのインストール
git clone https://github.com/leela-zero/leela-zero.git cd leela-zero git submodule update --init --recursive mkdir build && cd build cmake .. cmake --build .
ビルドのテスト(オプション)
./tests
buildディレクトリにあるleelazをコピーして用いる。
-
ネットワークファイルの準備
ネットワークファイルは、こちらのサイトから入手できる。(グラフの下の方にある)
筆者は、287番のファイルをダウンロードした。これをLizzie改良版で使うため、以下のようにリネームした。mv 0e9ea880fd3c4444695e8ff4b8a36310d2c03f7c858cadd37af3b76df1d1d15f.gz lznetwork.gz
-
Lizzie改良版への導入
導入はとても簡単で、leelazとlznetwork.gzをlizzie-improved-v3.3.jarと同じフォルダに入れるだけで良い。
参考サイト
- 【C++】Mac に Boost を インストールした – Chomado's Blog
- Boost C++ Libraries
- Leela-Zero(本体)
- Leela Zero(ネットワークファイル)
- Lizzie改良版
以上。
この投稿へのトラックバック
トラックバックはありません。
- トラックバック URL
この投稿へのコメント