質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

609閲覧

rails インストールができません/ mac 10.12.6

ink88882

総合スコア24

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2018/07/25 15:16

編集2018/07/26 17:02

前提・実現したいこと

railsをインストールしたいです。

mac 10.12.6環境で、ターミナルにてrails インストールを行いました。
ところがrails -v でバージョンを見ると 
sudo gem install railsと表示されます。

http://tomoprog.hatenablog.com/entry/2017/02/03/015936
sudo gem install railsを繰り返すと再度同じエラーになりました。

こちらに当てはまると考え、
ユーザーフォルダ名の中にあった「.bash_profile」を見ると

alias brew="env PATH=${PATH//Users/ユーザー名/.pyenv/shims:/} brew"
alias brew="env PATH=${PATH//Users/ユーザー名/.pyenv/shims:/} brew"

と何だか2行同じ内容があったため、下記のように編集しました。

alias brew="env PATH=${PATH//Users/ユーザー名/.pyenv/shims:/} brew"
export PATH="$HOME/.rbenv/bin:$PATH"

この状態で再度 sudo gem install rails を実行すると、
今後は下記のエラーとなりました。

ERROR: Could not find a valid gem 'rails' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: tlsv1 alert protocol version (https://rubygems.org/latest_specs.4.8.gz)

原因の特定に至らず。。
もし、何か分かることがあれば教えてください。


> takahashim さん
コメントありがとうございます。

ruby -v と実行すると、何が表示されますか?(Rubyのバージョンが知りたいです)

こちらの結果です。
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]

また、which ruby と実行すると、何が表示されますか?

こちらの結果です。
/usr/bin/ruby

ーーーーーーーーーーーーーーーー

ちなみに、関係があるかわかりませんが、
rubyのインストールもうまくいかないようで、

rbenv global 2.4.1
と打った後、
rbenv versions
と打つと
system

  • 2.4.1 (set by /Users/ユーザー名/.ruby-version)

となります。

ただ、その後
ruby -v
としてもまだ
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]

のままです。。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takahashim

2018/07/26 13:18

ruby -v と実行すると、何が表示されますか?(Rubyのバージョンが知りたいです)
takahashim

2018/07/26 13:18

また、which ruby と実行すると、何が表示されますか?
guest

回答1

0

ベストアンサー

ruby -vで2.0.0と出るということは、macOSのシステム標準のRubyが使われていることになります。
Rails 5.xの対応するRubyは「Ruby 2.2.2 or newer」ということなので、このRubyだとちょっと古すぎます。そのためrbenv等でインストールしたRubyを使う必要があります。
https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#ruby-versions

rbenvを使っている場合、Raisで使われるRubyのバージョンですが、そのディレクトリに.ruby-versionというファイルがあると、そのファイルに書かれたバージョンのRubyが使われます。
これを変更するには、rbenv local 2.4.1と実行します。そうすると、.ruby-versionの中身が2.4.1になるかと思います。
この上で、gem install railsを実行するとよいかと思います。

ちなみに、rbenvを使っている場合はsudoをつけなくてもgemコマンドを実行できるはずです(一度sudoをつけて実行してしまうとあとから変更できなくなっているかもしれませんが…)。これは、システム標準のRubyが使うgemsのディレクトリの書き込みには管理者権限が必要ですが、rbenvはユーザのHOME直下にgemsファイルを置くので、ユーザの権限で読み書きできるためです。


なお、

ERROR: Could not find a valid gem 'rails' (>= 0), here is why:

Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: tlsv1 alert protocol version (https://rubygems.org/latest_specs.4.8.gz)

といったようなエラーが出るのは、Rubyのバージョンが古い場合です。私の環境では、ruby 2.0.0p648のgem 2.0.14.1(macOSの標準のRuby)を使ってみたところ再現しました。これはつまり、gem install railsでこのエラーが出るということは、rbenvでインストールしたrubyに付属するgemコマンドが使われていない、ということになるので、そこを解決する必要があります(rubygemsを再インストールする必要はありません)。


ERROR: While executing gem ... (Errno::EACCES)

Permission denied @ rb_sysopen - /Users/ユーザー名/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/rails-5.2.0/README.md

みたいなエラーが出るのは、Permissionでsudoをつけたのとつけないのが混ざってしまっている可能性があります。
いったんgemをアンインストールしてから再インストールしてみるとよいかもしれません。

gemのアンインストールにはgem uninstallを使います。
まずgem uninstall -a -I -x --forceをやってみて、何かエラーが出たらsudo gem uninstall -a -I -x --forceも実行してみてください。これでインストールしたgemが一通り消えるはずです。
そこで改めて、gem install railsでインストールしてみるとよいでしょう。

投稿2018/07/26 17:19

編集2018/07/27 16:38
takahashim

総合スコア1877

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ink88882

2018/07/27 14:43

ありがとうございます! rbenv local 2.4.1 とした上でエラーなど特にでず、 gem install rails と打ち込むと、 ERROR: Could not find a valid gem 'rails' (>= 0), here is why: Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: tlsv1 alert protocol version (https://rubygems.org/latest_specs.4.8.gz) となってしまいました。 ググると https://qiita.com/betrue12/items/059c2424f27fd31969f9 に近いようでしたが、windows環境の記事だったのでひとまずは上の記事の解決方法は行なっておりません。 試してみた方がよさそうでしょうか。
takahashim

2018/07/27 15:18

rbenv localを実行したあと、そのディレクトリに.ruby-versionというファイルはできますか? また、そこでruby -vと実行すると何が表示されますか?
takahashim

2018/07/27 15:19

さらに、which gemと実行すると何が表示されますか?
takahashim

2018/07/27 15:29

あー、Unable to download data from https://rubygems.org/ - SSL_connect... のエラーが再現できました。上の回答に追記しますね。
ink88882

2018/07/27 16:09

ありがとうございます! 再度ググって bash_profileに eval "$(rbenv init -)" を記載してみた上で、ターミナルの再起動、ruby -v で ruby 2.4.1p111 となるようになりました! 2.4.1がデフォルトで使えるようになっているということでしょうか。 その後、改めてrailsのインストールをしようと gem install rails をしたところ、 ERROR: While executing gem ... (Errno::EACCES) Permission denied @ rb_sysopen - /Users/ユーザー名/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/rails-5.2.0/README.md と出るようになりました。。! となってしまいました。
takahashim

2018/07/27 16:34

なるほど、一歩前進ですね。 そのエラーはpermissionのエラーで、sudoをつけて実行したのとつけないで実行したのが混ざってるような気がしますね…。回答に追記しておきます。
ink88882

2018/07/28 04:54

ありがとうございます。 アンインストールではエラーは出ず、 INFO: Uninstalled all gems in となりました。 改めてgem install rails をしてみましたが、再度 ERROR: While executing gem ... (Errno::EACCES) Permission denied @ rb_sysopen - /Users/ユーザー名/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/concurrent-ruby-1.0.5/CHANGELOG.md となりますね。。。末尾の方のエラーは少し異なるようではあります。。
takahashim

2018/07/28 04:59

うーん、まだエラーがPermission deniedが出るということは、concurrent-ruby-1.0.5が消されずに残ってしまっているということですよね…。 sudo gem uninstall -a -I -x --force の方も試してみていただけますか?
ink88882

2018/07/28 07:02

sudo gem uninstall -a -I -x --force を試してみました。やはり INFO: Uninstalled all gems in となり、再度 gem install rails をしてみましたが、 ERROR: While executing gem ... (Errno::EACCES) Permission denied @ rb_sysopen - /Users/ユーザー名/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/concurrent-ruby-1.0.5/CHANGELOG.md となってしまいます。。!
ink88882

2018/09/01 03:49

一旦、別環境で作業を進めることにいたしました。 ご確認、ご回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問