- ベストアンサー
railsのインストールができない問題
- 先日までruby1.9.3, rails3.2.4を使用できていたのですが、他にいろんなものをインストールをしていた時に何か変になってしまったのか、突然railsが使用できなくなってしまいました。
- rails、gemの場所を調べるとopt/local/bin/となっているのですが、rails-vとすると-bash: /opt/local/bin/rails: /opt/local/bin/ruby: bad interpreter: No such file or directoryとなってしまって使えません。
- gem -vとすると-bash: /opt/local/bin/gem: /opt/local/bin/ruby: bad interpreter: No such file or directoryとなってしまって使えません。しかしrubyは正常に動いているようです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> +nosuffixしてなければ、ruby/gemではruby1.8.x、 ruby1.9/gem1.9では1.9.xが使われるはず と書いたように、MacPortsでインストールしたRuby 1.9.xでは「1.9」というsuffix(後に付くもの)が付きます。 インストール時に+nosuffixを指定すれば、suffixが付きません。が、installed の結果は「ruby19 @1.9.3-p286_0+doc (active)」と nosuffixが無いので、1.9が付いています。 ただ、「ruby @1.8.7-p370_2 (active)」ともあるので、1.8.7もactiveで、/opt/local/bin/rubyが存在するはずなので、「opt/local/bin/ruby: bad interpreter: No such file or directory」というエラーとは状況が一致しないのが気になります。 sudo port -f deactivate ruby sudo port activate ruby でactiveしなおしたらこのエラー自体は治るかもしれません。 ただし、gemもrailsも1.8系になります。 1.9系を使うならgem1.9です あと、MacPortsには rb19-rails 等のrailsに関係するパッケージも用意されています。 Ruby1.9をMacPortsのものを使うなら、railsをはじめ、必要なものはrb19-で始まるパッケージをMacPortsからインストールして、足りないものはgem1.9で、というのがいいかと思います。
その他の回答 (1)
- kmee
- ベストアンサー率55% (1857/3366)
/opt/local/を使っている、ということは、MacPortsを使ってインストールしたRubyではないでしょうか? この他に、Macには最初からインストールされているRubyが /usr/bin/ruby にあります。 Rubyが使えるのは、この最初から入っていた方が使えているから。gemが使えないのは、MacPortsでインストールしたRubyを使おうとしているのに存在しないから、だと思われます。 最近、MacPortsでなにか操作しませんでしたか?ターミナルから port installed "ruby*" を実行して出てくるものに、rubyまたはruby19はありますか?activeになっていますか? activeになっていないなら、activateで、そもそも出てこないならinstallで有効にします。 あと、+nosuffixしてなければ、ruby/gemではruby1.8.x、 ruby1.9/gem1.9では1.9.xが使われるはずですが、質問には、gem を使って ruby1.9.3とあります。どちらなのでしょう?
補足
回答ありがとうございます。 ご指摘の通り、最近Kinectを使う環境を整える時にMacportsを使いました。 Railsが使えなくなったのはその後からです。 今確認したところ、 The following ports are currently installed: ruby @1.8.7-p370_2 (active) ruby19 @1.9.3-p286_0+doc (active) と表示されました。どちらもactiveになっているようです。 以前rubyをアップグレードしたい時にうまくいかず、rvmも使いました。 なので、だぶってしまっているのかもしれません… 最終的にrailsを使いたいのでgemが必要だと思っていたのですが、ruby初心者のためあまり詳しくなくてすみません。 今gem1.9 -vとしたところ、1.8.23と表示されました。 以前ruby19にアップグレードした時に、そのままだとruby19と入力しなければ使えないことがありましたが、それと同じ現象なのでしょうか?
お礼
Railsを再インストールしたら解決しました。 親身に相談に乗っていただき、ありがとうございました。