CUDAのプログラムを書くための emacs の設定です
cuda-mode
まずcuda-modeをインストールします
設定はこれだけ
(use-package cuda-mode :mode ("\\.cu\\'" "\\.cuh\\'") )
これでCUDA関連の予約語などがhighlight表示されます
lsp 関連
clangd 経由でCUDAのコードでもlspが使えます
設定も簡単です
- 設定ファイル .clangd を用意
- C/C++と同様に lspを使う
これだけです
.clangd の内容は以下のとおり
CompileFlags: Add: - --cuda-path=/usr/lib/cuda - -L/usr/lib/cuda/lib64 - -I/usr/lib/cuda/include
これで clangd が CUDA関連のヘッダファイルを認識してAPIの補完などができるようになります
私は lsp-mode で動作確認しています.clangd側の設定だけで良いので,eglot もおそらく動くと思います