Closed KazApps closed 3 months ago
私のほうで試してみたところ、そのエラーが出ず、正常にビルドできました。 MSYS2を新規にインストールして、たぶん以下のコマンドでビルドできるかと思います。
pacman --needed --noconfirm -Syuu
pacman --needed --noconfirm -Syuu pactoys
pacboy --needed --noconfirm -Syuu clang:i lld:i openblas:i openmp:i toolchain:i base-devel:
make clean YANEURAOU_EDITION=YANEURAOU_ENGINE_NNUE ENGINE_BRANCH=dev
make -j8 evallearn COMPILER=g++ YANEURAOU_EDITION=YANEURAOU_ENGINE_NNUE ENGINE_BRANCH=dev ENGINE_NAME="YaneuraOu\(dev-learn\)" TARGET_CPU=AVX2
たしかにg++を使えばビルドはできましたが、clangを使うとエラーが出てしまいます。
コマンドは下記のとおりです。
make clean evallearn TARGET_CPU=ZEN3 YANEURAOU_EDITION=YANEURAOU_ENGINE_NNUE COMPILER=clang++ EXTRA_CPPFLAGS="-I/mingw64/include/openblas" -j 32
私の環境でもやってみましたが、
make clean evallearn TARGET_CPU=ZEN3 YANEURAOU_EDITION=YANEURAOU_ENGINE_NNUE COMPILER=clang++ EXTRA_CPPFLAGS="-I/mingw64/include/openblas" -j 32
make clean evallearn TARGET_CPU=ZEN3 YANEURAOU_EDITION=YANEURAOU_ENGINE_NNUE COMPILER=clang++ -j 32
と 2. どちらでも正常にビルドできます。
一度MSYS2をクリーンインストールして、試してみていただけないでしょうか。
クリーンインストールしてみましたが、同様のエラーが出てしまいます。
AWSを用いて新規にインスタンスを借りて以下の手順でビルドできることは確認済みです。 そこに書かれているコマンドをコピペして試してみてください。
MSYS2上でevallearnをビルドしようとしたところ、`
というリンクエラーが出ます。 しかしLDFLAGSに-lgompとつけると
とシンボルが重複してしまいます。 clang version 18.1.5 LLD 18.1.5 (compatible with GNU linkers)
追記 (2024/05/24)
--allow-multiple-definition
を指定することでビルドすることはできるようです。