Install Anchor に注意事項含めて、すべて記載されているが、うっかり見落としてしまい、npmインストールしてハマったため、そのときのメモ。
現象
Mac(Big Sur 11.6)で、Serum Anchor(0.19.0)をnpm経由でバージョンアップしたところ、Macは非対応の旨のエラー。
% anchor --version
anchor-cli 0.19.0
% npm i -g @project-serum/anchor-cli
npm ERR! code EBADPLATFORM
npm ERR! notsup Unsupported platform for @project-serum/anchor-cli@0.20.1: wanted {"os":"linux","arch":"x64"} (current: {"os":"darwin","arch":"x64"})
npm ERR! notsup Valid OS: linux
npm ERR! notsup Valid Arch: x64
npm ERR! notsup Actual OS: darwin
npm ERR! notsup Actual Arch: x64
原因
npmは、Linuxしか対応していない(公式サイトにも明記あり)。
Only x86_64 Linux is supported currently
Anchorインストールは結構前だったので、どういう方法でインストールしたのか忘れていた。
実際は、npmではなくcargoでインストールしていた。
対応
Build from source for other operating systems の記載に沿って、以下を実行する。
% cargo install --git https://github.com/project-serum/anchor --tag v0.20.1 anchor-cli --locked
【注意】Anchorはバージョンが頻繁にアップデートされるため(早いと数日で)、上記コマンドをコピペせずに、公式サイトのコマンドを直接コピペする必要あり
そしてバージョンアップ成功(0.19.0 → 0.20.1)。
% anchor --version
anchor-cli 0.20.1