Closed5

VSCodeのエラー「`Failed to start Solargraph:`」の対処への過程

MASAMASA

事象

VSCodeで"~.rb"ファイルを開くと、「Failed to start Solargraph」エラーが発生。

エラーの原因を探っていく。

MASAMASA

エラーの原因を探る

"which solargraph" 実行ファイルの検索

masa@DESKTOP-0CNPS43:~/environment/RailsTutorial$ which solargraph
/mnt/c/Ruby27-x64/bin/solargraph

実行ファイルはある。
"solargraph -v" バージョン確認

masa@DESKTOP-0CNPS43:~/environment/RailsTutorial$ solargraph -v
bash: /mnt/c/Ruby27-x64/bin/solargraph: C:/Ruby27-x64/bin/ruby.exe: bad interpreter: No such file or directory

bad interpreter: No such file or directory」というエラーが発生。

上記エラーメッセージで検索すると、Windows環境にあるファイルの改行コードがCRLFになっており、それをLFに直すと大丈夫そうとのこと。

なので、CRLFをLFに修正する。

参考

MASAMASA

CRLFをLFに修正する。

Windows上のC:/Ruby27-x64/bin/ruby.exeの改行コードをCRLFからLFに変換しようとしたが、そもそもWSLのUbuntuにsorarglaphをインストールしてそれを使えばよいのではないかという考えにいたった。
ので、参考サイトをみながら、Rubyをインストールする。

MASAMASA

Rubyをインストールする。

前準備
# apt パッケージの情報を最新にする
sudo apt update -y
# Ubuntu にインストールされているソフトウェアを最新にする
sudo apt upgrade -y
# Ruby のビルドに必要なパッケージを apt 経由でインストールする
sudo apt install build-essential -y
sudo apt install -y libssl-dev libreadline-dev zlib1g-dev

# PostgreSQL をインストール
sudo apt-get install postgresql-common
sudo apt-get install libpq-dev
Rubyインストール
# rbenv(パッケージ管理ツール)をインストール
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
# 環境変数にPathを設定
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
# シェルを再起動
exec $SHELL -l

# ruby-buildをインストール
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

# Rubyをインストール
rbenv install 2.7.2
rbenv global 2.7.2
Rails 6 以降で必要になった Node.js をインストール
# node.js, npmをインストール
sudo apt install -y nodejs npm
# n packageをインストール
sudo npm install n -g
# n packageを使ってnodeをインストール
sudo n stable
# 最初に入れた古いnode.js, npmを削除
sudo apt purge -y nodejs npm
# 再ログイン
exec $SHELL -l
# yarn packageをインストール
sudo npm install yarn -g
# node.js のバージョンが最新か確認
node -v
Gemfileをインストール
# rails をインストールするために bundle install
bundle install --path vendor/bundle

Rubyのインストールが完了したので、再度VSCodeを開くと、エラー「WSL Daemon exited with code 0」が発生した。
よって、それを調べる。

参考

Ruby 歴 10 年の私が【絶対に】 gem install rails コマンドを実行しない理由

MASAMASA

エラー「WSL Daemon exited with code 0」への対処

UbuntuからVSCodeを再起動すると、エラーは発生せずに問題なくVSCodeを開くことができた。

しかし、最初のエラー「Failed to start Solargraph:」は解消されず。

Ubuntu上にsolargraphをインストールする

gem install solargraph

再度、VSCodeを開く。

エラー解消しました!

この内容はこちらの記事にてまとめます。

このスクラップは2021/01/08にクローズされました