Open6
Fedora 38でplpgsql-lspを動かす
plpgsql-lsp
PostgreSQLで利用可能な組み込み言語plpgsqlのLSP。私が愛用しているneovimで使おうとしたところ、起動できなかったので、試行錯誤のメモを残す。コミットしたい。
サーバーのセットアップ
私の環境は以下。
➤ uname -a
Linux ser5-dev 6.5.6-200.fc38.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Oct 6 19:02:35 UTC 2023 x86_64 GNU/Linux
➤ cat /etc/fedora-release
Fedora release 38 (Thirty Eight)
➤ node -v
v18.18.2
本来なら以下のコマンドで起動可能なサーバーが手に入るはず。
npm install
しかし、npm install
でエラーが出てしまい失敗してしまう。
npm ERR! g++: 致命的エラー: 環境変数 ‘RPM_ARCH’ が定義されていません
npm ERR! コンパイルを停止しました。
npm ERR! make: *** [addon.target.mk:164: Release/obj.target/addon.node] エラー 1
npm ERR! gyp ERR! build error
npm install
エラーの解決
以下の環境変数を定義するとnpm installが通るようになる。
export RPM_ARCH=$(uname -m)
export RPM_PACKAGE_RELEASE=1.0
export RPM_PACKAGE_VERSION=1.0
export RPM_PACKAGE_NAME=plpgsql-lsp
起動方法
mattn氏のvim-lsp-settingsを参考に起動できた。
libpg-queryまわりでエラーが出た
2回目のトライではエラー無くnpm run buildが通ってしまったが、libpg-queryのファイルが足りずエラーになってしまったことがあった。その時には以下のコマンドで解決できた。
cd server/node_modules/libpg-query/
npm run binary:build
実はまだneovimでは起動を検証できていない。私が利用しているmason-lspconfig.nvimなどを参考にセットアップまでこぎつけたい。