🙆
clangd最新版のビルド手順
すぐ忘れそうなので手順を残します。
環境
- Ubuntu22.04
参考
この記事の存在意義が失われますがここを見れば全て書いてあります。
最新版clangdのダウンロード
LLVMプロジェクトをまるっとダウンロード or git cloneします。本記事の時点ではv19が最新のよう。
私はDownloads
に落としました。200MB超えなので容量に注意してください。
ダウンロードできたらディレクトリ内に移動します。
~/Downloads
$ cd ./llvm-project-main
ビルド準備
cmakeはインストールしている前提としています。
Ubuntuであればsudo apt install cmake
でインストールできます。
1. buildディレクトリ作成
ビルド用のディレクトリを作成しその中に移動します。
ビルド用ディレクトリ名は何でもよいですが今回はbuild
とします。
~/Downloads/llvm-project-main
$ mkdir ./build
$ cd ./build
2. cmake configuration
build
内で以下を実行するとcmake configurationが始まります。
$ cmake ../llvm/ \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra" \
各オプションは以下で説明します。
-
-DCMAKE_BUILD_TYPE
ビルドタイプを指定します。4種ありますが今回はReleaseを選びました。
Build Type | Optimizations | Debug Info | Assertions | Best suited for |
---|---|---|---|---|
Release | For Speed | No | No | Users of LLVM and Clang |
Debug | None | Yes | Yes | Developers of LLVM |
RelWithDebInfo | For Speed | Yes | No | Users that also need Debug |
MinSizeRel | For Size | No | No | When disk space matters |
引用
https://llvm.org/docs/CMake.html#frequently-used-cmake-variables
-
-DLLVM_ENABLE_PROJECTS
LLVMには色んなプロジェクトが含まれていますのでどれをビルドするか指定します。
今回はclang
とclangd
です。;
で区切ります。
3. ビルド
build
ディレクトリ内で以下を実行します。
~/Downloads/llvm-project-main/build
$ cmake --build . --target install
私はクソ雑魚PCだからか3~4時間くらい掛かりました。のんびり待ちましょう。
4. インストール
ビルドが終わったらbuild/bin
にclang
とclangd
の実行ファイルが出来ていると思います。
実行ファイルが確認出来たら次のコマンドを実行します。
~/Downloads/llvm-project-main/build
$ cmake -DCMAKE_INSTALL_PREFIX=/opt/llvm -P cmake_install.cmake
-DCMAKE_INSTALL_PREFIX
にインストール先を指定します。私は個別でソースビルドしたものは/opt
に入れる習慣があるので/opt/llvm
としました。
5. パスを通す
.bash_profile
にでも追加しておくと便利です。
export PATH="/opt/llvm/bin:$PATH"
6. vim-lspで動作確認
vim-lsp-settingsを使用していますので、.vimrc
に以下を追加します。
let g:lsp_settings = {
\ 'clangd': {
\ 'cmd': ['/opt/llvm/clangd-15', '--enable-config'],
\ }
\}
vimを立ち上げて動作確認をします。
Discussion