状況
Apple シリコンチップの Mac 上で VirtualBox を使用して Debian を実行し、Neovim の環境構築を行っていた際、Mason から clangd をインストールしようとしても正常に動作しませんでした。
この問題を解決するための手順を記録します。
原因
Mason が clangd をインストールできない根本的な理由は、clangd の公式リリースページ に linux_arm64 向けの事前ビルド済みバイナリが存在しないためです。
Mason は通常これらのリリースからバイナリを取得しますが、対象のバイナリがないために自動インストールに失敗してしまいます。
環境
- ホストマシン: Mac (M2 Pro)
- OS: Debian (ARM64)
- Neovim: 0.11.2
- 仮想化環境: VirtualBox
手順
公式の事前ビルド済みバイナリが提供されていないため、システム(apt)側にインストールした clangd を Mason のパスに紐付けることで解決します。
1. clangd のインストール
まずは apt を使用して、システム全体に clangd をインストールします。
sudo apt update
sudo apt install clangd
2. シンボリックリンクの作成
インストールした clangd へのシンボリックリンクを、Mason がバイナリを参照するディレクトリ(~/.local/share/nvim/mason/bin/)内に作成します。
# ディレクトリが存在しない場合は作成
mkdir -p ~/.local/share/nvim/mason/bin
# シンボリックリンクを張る
ln -s $(which clangd) ~/.local/share/nvim/mason/bin/clangd