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を入れてしまえば、後は拍子抜けするほどに簡単である。

  1. 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行目の作業は必要ない。

  2. 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
  3. 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をコピーして用いる。

  4. ネットワークファイルの準備
    ネットワークファイルは、こちらのサイトから入手できる。(グラフの下の方にある)
    筆者は、287番のファイルをダウンロードした。これをLizzie改良版で使うため、以下のようにリネームした。

    mv 0e9ea880fd3c4444695e8ff4b8a36310d2c03f7c858cadd37af3b76df1d1d15f.gz lznetwork.gz
  5. Lizzie改良版への導入
    導入はとても簡単で、leelazとlznetwork.gzをlizzie-improved-v3.3.jarと同じフォルダに入れるだけで良い。

参考サイト

以上。

この投稿へのコメント

コメントはありません。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

この投稿へのトラックバック

トラックバックはありません。

トラックバック URL