ruby on railsに詳しい方で分かる方がいればご教授いただきたいです。
先日までruby1.9.3, rails3.2.4を使用できていたのですが、他にいろんなものをインストールをしていた時に何か変になってしまったのか、突然railsが使用できなくなってしまいました。
OSはMac OS X 10.7.5です。
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は正常に動いているようです。
何か分かる方がいらっしゃいましたら、お力を貸して下さると非常に助かります。
作業ができずに困っています。どなたか、お願いします><
No.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で、というのがいいかと思います。
No.1
- 回答日時:
/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と入力しなければ使えないことがありましたが、それと同じ現象なのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Ruby Ruby on Railsでサーバーを立ち上げるには 1 2022/08/28 16:16
- Ruby Ruby / passenger のインストールについて 1 2023/01/30 18:31
- UNIX・Linux postfix smtpサーバーリレーがTLSハンドシェーク失敗 1 2022/08/15 15:45
- その他(プログラミング・Web制作) Arduinoに関する質問 4 2023/08/07 21:19
- Ruby 教えてください 2 2023/01/04 17:50
- UNIX・Linux AWSのEC2のZabbixユーザーでawscliコマンドが実行できない状態を解決する 1 2022/12/06 22:17
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- Ruby プログラミング講師はまだ需要ありますでしょうか? 1 2022/11/07 19:43
- Ruby Gitのクローンについて 3 2022/04/10 12:28
- 画像編集・動画編集・音楽編集 DVD Styler トラブル解決方法 6 2022/10/29 16:00
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Ruby / passenger のインストー...
-
apache2にmod_rubyの追加の仕方
-
We're sorry, but something we...
-
web上のhtmlファイルから文字デ...
-
プログラミング言語で大文字と...
-
Ruby interpreter (CUI) 2.2.3p...
-
システムエンジニアの適正について
-
Ruby interpreter (CUI) 2.2.3 ...
-
小文字wと大文字Wの区別
-
Rudyを覚えたい
-
RubyでexeファイルをつくるExer...
-
windows7で複数のrbファイルを...
-
「大文字・小文字・スペース」...
-
ActiveScriptRubyについて
-
プログラミングのバイトに関す...
-
perlで確率計算
-
Yahoo知恵袋や教えてgooのよう...
-
FORTRAN77の質問です。
-
rubyで末尾から文字を検索する
-
rubyに関する質問です。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Ruby / passenger のインストー...
-
We're sorry, but something we...
-
WinXP+Apache2にerubyを入れま...
-
Linuxの「find」コマンドについて
-
Passengerがインストールできな...
-
Rubyのインストール
-
ruby on railsインストールでエ...
-
システムエンジニアの適正について
-
小文字wと大文字Wの区別
-
初心者 パイソンプログラム
-
プログラミング講師はまだ需要...
-
VB.NETで階乗を求めるプログラ...
-
web上のhtmlファイルから文字デ...
-
RubyでNo such file or directo...
-
プログラミング言語で大文字と...
-
Rubyの.soについて
-
九九の表示
-
ruby の Σ計算
-
バーコードのチェックデジット...
-
CかC++どちらを覚えるべきですか?
おすすめ情報