という現象が発生したので、その原因と解決策のメモ。 調べた感じ同じ現象でハマっている人はまだ居なさそうだった。
発生した状況
- Ubuntu 18.04 LTS
- rbenv 1.1.1-30-gc8ba27f
の環境下で Ruby 2.3.6 のインストールを試行すると以下のエラーが発生する。
BUILD FAILED (Ubuntu 18.04 using ruby-build 20180424) Inspect or clean up the working tree at /tmp/ruby-build.20180512131631.10931 Results logged to /tmp/ruby-build.20180512131631.10931.log Last 10 log lines: installing rdoc: /home/hanocha/.rbenv/versions/2.3.6/share/ri/2.3.0/system installing capi-docs: /home/hanocha/.rbenv/versions/2.3.6/share/doc/ruby The Ruby openssl extension was not compiled. ERROR: Ruby install aborted due to missing extensions Try running `apt-get install -y libssl-dev` to fetch missing dependencies.
libssl-dev
を入れろと言われるので指示通りインストールするものの解決せず。
解決方法
libssl1.0-dev
を入れる
# apt install libssl1.0-dev
原因
Ubuntu 18.04 で # apt install libssl-dev
を実行すると libssl-dev
の 1.1
系がインストールされる。
しかし Ruby 2.3.6 は libssl-dev
の 1.0
系が必要らしく、ビルドに失敗する。
Ubuntu 17.10 以前であれば apt install libssl-dev
で 1.0
系が入るので問題なかった。
また、 (少なくとも)Ruby 2.5 以降は libssl-dev
が 1.1
系でも問題ないことも確認した。
▼ 17.10 だと 1.0 系の libssl-dev
が入る
Ubuntu – Details of package libssl-dev in artful
▼ 18.04 だと 1.1 系が入る