AWS構築 格闘日記-2 忘備録
rbenvにてインストールできない。
このようなエラーが出る
$ rbenv install -v 2.5.3 configure: error: in `/tmp/ruby-build.20190101085547.10626/ruby-2.5.3': configure: error: no acceptable C compiler found in $PATH
$ rbenv -v rbenv 1.1.1 $ which rbenv ~/.rbenv/bin/rbenv
gcc コンパイラが無いと行っているのか? rubyビルド がおかしいのか?
一つ問題はもともとamazon linuxには デフォルトでrubyがインストールされている。 それを削除しないと行けないのか? ログはここみたい
Results logged to /tmp/ruby-build.20190101085547.10626.log
ログをみると
checking for ruby... /usr/bin/ruby tool/config.guess already exists tool/config.sub already exists checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for gcc... no checking for cc... no checking for cl.exe... no configure: error: in `/tmp/ruby-build.20190101085547.10626/ruby-2.5.3': configure: error: no acceptable C compiler found in $PATH See `config.log' for more details
このページを読むとRuby-buildで入れるにしても、rbenvのRuby-buildを利用しないと行けないみたいだ。 rbenvで複数のバージョンのRubyを管理する - Qiita
デフォルトRuby-buildを削除して、入れ直してみよう
その前にlogの確認
See `config.log' for more details BUILD FAILED (Amazon Linux AMI 2018.03 using ruby-build 20181225-1-g095d9db) Inspect or clean up the working tree at /tmp/ruby-build.20190101091148.11135 Results logged to /tmp/ruby-build.20190101091148.11135.log
指示されているように`config.log' を見てみる しかしどこにあるのかわからない ruby-buildのパスが取っていないのか?
このページをみると
rbenvで複数のバージョンのRubyを管理する - Qiita
必要なパッケージのインストールをしないと行けないみたいだ。
$ sudo yum install gcc openssl-devel
gccらしきものはあるがopenssl-develが無いみたいだ。
//yumでインストールした一覧表示 $ yum list installed | grep gcc libgcc72.x86_64 7.2.1-2.59.amzn1 installed $ yum list installed | grep openssl-devel
インストール実行
$ sudo yum install openssl-devel
これで
$ rbenv install -v 2.5.3
しかしまた同じエラー ruby-buildにパスをとおす?
$ whic ruby-build -bash: whic: command not found
これをやっていなかった。 このページにrbenv とruby-buildの関係がわかりやすく書いてある。
rbenv + ruby-build はどうやって動いているのか - takatoshiono's blog
~/.rbenv/bin/rbenv init
やってみたけどだめ。
本家サイトによると
Home · rbenv/ruby-build Wiki · GitHub
これらをインストールしなさいとある。 はじめからここに行けばよかった。本家は大切!
$ sudo yum install -y gcc-6 bzip2 openssl-devel libyaml-devel libffi-devel readline-devel zlib-devel gdbm-devel ncurses-devel
でもエラー
no acceptable C compiler found in $PATH
CコンパイラのPATHを通ささないと行けないみたいだ。
rubyが邪魔しているのかもしれない
[ec2-user@udemy-rails-web1 ~]$ which ruby /usr/bin/ruby
rubyのアンインストールを調べる そもそもyumでインストールされていた ラッキ-!
$ yum list installed | grep ruby ruby.noarch 1:2.0-0.3.amzn1 installed ruby20.x86_64 2.0.0.648-1.31.amzn1 installed ruby20-irb.noarch 2.0.0.648-1.31.amzn1 installed ruby20-libs.x86_64 2.0.0.648-1.31.amzn1 installed rubygem20-bigdecimal.x86_64 1.2.0-1.31.amzn1 installed rubygem20-json.x86_64 1.8.3-1.51.amzn1 installed rubygem20-psych.x86_64 2.0.0-1.31.amzn1 installed rubygem20-rdoc.noarch 4.2.2-1.43.amzn1 installed rubygems20.noarch 2.0.14.1-1.31.amzn1 installed
成功!
$ sudo yum erase ruby.noarch //=== Dependency Removed: vim-enhanced.x86_64 2:8.0.0503-1.45.amzn1 Complete!
これをするといっぱいパッケージがインストールされた。 入っていなかったのか?
$ sudo yum install gcc //== Dependency Installed: cpp48.x86_64 0:4.8.5-28.142.amzn1 gcc48.x86_64 0:4.8.5-28.142.amzn1 glibc-devel.x86_64 0:2.17-260.175.amzn1 glibc-headers.x86_64 0:2.17-260.175.amzn1 kernel-headers.x86_64 0:4.14.88-72.73.amzn1 libgcc48.x86_64 0:4.8.5-28.142.amzn1 libgomp.x86_64 0:6.4.1-1.45.amzn1 libmpc.x86_64 0:1.0.1-3.3.amzn1 mpfr.x86_64 0:3.1.1-4.14.amzn1 Complete!
パスは通さなくていいのか?疑問である。
$ ruby -v -bash: /usr/bin/ruby: No such file or directory
今度はrubyのパスが通っていない???