24

私は Ubuntu 10.04 を実行し、レールをインストールしようとしている Linux 初心者です。最初に ruby​​ をインストールし、次に RVM をインストールし、次に ruby​​gems をダウンロードしてインストールし、次に rails をインストールしました。

Rails は、コマンドの前に「sudo」がある場合にのみ応答するようです。ターミナルで「rails new test」と書くと、次のようになります。

/usr/local/lib/site_ruby/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem rails (>= 0) (Gem::LoadError)
    from /usr/local/lib/site_ruby/1.8/rubygems.rb:214:in `activate'
    from /usr/local/lib/site_ruby/1.8/rubygems.rb:1082:in `gem'
    from /usr/bin/rails:18

ターミナルに行って「rails -v」と書くと、同じ結果が得られます。

   /usr/local/lib/site_ruby/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem rails (>= 0) (Gem::LoadError)
        from /usr/local/lib/site_ruby/1.8/rubygems.rb:214:in `activate'
        from /usr/local/lib/site_ruby/1.8/rubygems.rb:1082:in `gem'
        from /usr/bin/rails:18

そして、ターミナルに行って「sudo rails -v」と書くと、次のようになります: Rails 3.0.0.rc

「宝石環境」は私にこれを与えます:

RUBYGEMS VERSION: 1.3.7
  - RUBY VERSION: 1.9.2 (2010-07-11 patchlevel -1) [i686-linux]
  - INSTALLATION DIRECTORY: /home/josh/.rvm/gems/ruby-1.9.2-rc2@rails3tutorial
  - RUBY EXECUTABLE: /home/josh/.rvm/rubies/ruby-1.9.2-rc2/bin/ruby
  - EXECUTABLE DIRECTORY: /home/josh/.rvm/gems/ruby-1.9.2-rc2@rails3tutorial/bin

パスが正しく設定されていないのではないかと疑っていますが、修正方法がわかりません。提案?

4

9 に答える 9

45

Ubuntu 10.10のクリーンインストールでもこの​​問題が発生しました...「$ rvm notes」に記載されているrvmとrubyの前提条件をインストールした後でも。

「rvm」gem インストールがシステム zlib インストールを見つけられないという問題があるようです。上記のダニエルのコメントは素晴らしいコメントです-回答としてリストされていないのは残念です。

したがって、私にとっての解決策は、 https://rvm.beginrescueend.com/packages/zlib/でダニエルが指摘した指示に従うことでした。

$ rvm pkg install zlib
$ rvm remove 1.9.2
$ rvm install 1.9.2

最初のコマンドは、zlib を rvm 領域にローカルにインストールします。2 番目のコマンドは ruby​​ 1.9.2 を削除し、3 番目のコマンドは ruby​​ 1.9.2 を rvm-local zlib とともに再インストールします。

その後、Ruby のバージョンを設定し、gem をインストールします。

$ rvm use 1.9.2
$ gem install "なんでも"

于 2011-04-17T07:37:39.177 に答える
17

私の推測では、sudo を使用して gem をインストールしたと思います (例: sudo gem install rails)。sudo を使用してインストールすると、RVM は無視され、システムの ruby​​ が使用されます。

RVM を使用する場合、sudo を使用してインストールすることは望ましくありません (sudo を使用して RVM セットアップを実行するためのコマンド rvmsudo がありますが、これを使用することはめったにありません)。環境からわかるように、gem は /home/josh/.rvm/gems/ruby-1.9.2-rc2@rails3tutorial/gems に保存され、インストールに root 権限は必要ありません。

だから試してください:

gem install rails

あなた自身として、すべてが機能しているかどうかを確認してください。

于 2010-08-19T03:23:53.857 に答える
7

この警告が表示された場合は、「エラー:コマンドを読み込んでいます:ロードするファイルがありません--zlibを更新してください」

基本的に、rubyのコンパイル時にzlibライブラリが存在しない場合は、戻ってライブラリをインストールしてから、rubyを再コンパイルする必要があります。

したがって、これらの手順を試してください

  1. ルビーをアンインストールする

    rvmはruby-1.9.2を削除します

  2. 必要なライブラリをインストールします

    sudo apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

  3. rubyを再インストールします

    rvm install 1.9.2

  4. このバージョンのrubyをデフォルトとして設定することをお勧めします

    rvm use 1.9.2 --default

  5. 安全のために、現在開いているターミナルを閉じて、新しいターミナルを開いてください。ここから行ってもいいはずです。

于 2011-10-18T17:22:24.573 に答える
2

Rob Di Marco が上で述べたように、RVM では使用できません( RVM のドキュメントsudo gem install railsを参照してください)。

私は実際に非常によく似た質問をしました。最初に sudo gem を使用してレールをインストールしましたが、RVM を使用して古いバージョンのレールをインストールしようとしたときに、この問題に遭遇しました。これは私のコードでした:

rvm use 1.8.7
rvm gemset create rails3.0.1
rvm 1.8.7@rails3.0.1
sudo gem install rails --version=3.0.1 #the *sudo* in this line is WRONG

別のユーザー (zetetic) は、次のコマンドを使用して「sudo gem rails」をアンインストールすることを提案しました。

sudo gem uninstall rails

そして、sudoなしで再度インストールします-gem install rails

このすべてを行った後、元のコードを再試行したところ、機能しましたが、今回は sudo がありません。

rvm use 1.8.7
rvm gemset create rails3.0.1
rvm 1.8.7@rails3.0.1
gem install rails --version=3.0.1

上記のコードは、RVM を使用しようとしている場合にのみ関連する可能性がありますが、問題を解決するには、sudo レールをアンインストールし、sudo なしで再インストールしてみてください。私のために働いた。幸運を!

于 2010-12-07T03:00:37.583 に答える
2

解決策は次のとおりです。

apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

それで :

rvm install ruby-1.9.2-p290
rvm default 1.9.2
于 2011-07-25T00:21:46.237 に答える
0

いいえ、すべての宝石はsudoなしでインストールされます。

役立つデバッグ情報を次に示します。

前の $PATHrvm 1.9.2 --passenger

/home/kevin/.rvm/gems/ruby-1.9.2-p0/bin: /home/kevin/.rvm/gems/ruby-1.9.2-p0@global/bin: /home/kevin/.rvm/ rubies/ruby-1.9.2-p0/bin:/home/kevin/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/ユーザー/ゲーム

$PATH 後rvm 1.9.2 --passenger

/home/kevin/.rvm/gems/ruby-1.9.2-p0/bin: /bin:/home/kevin/.rvm/rubies/ruby-1.9.2-p0/bin:/home/kevin/.rvm /bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

これは私の .bashrc ファイルです: http://pastebin.com/H9U3azAk

于 2010-09-12T21:17:55.680 に答える
0

ソースからインストールする場合

ext/Setup and uncomment the zlib line

$ ./configure
$ make
$ sudo make install

$ ruby -v
=> ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-linux]

$ gem -v
=> 1.3.7
于 2010-11-06T13:11:20.680 に答える
0
  1. まず、必要なライブラリをインストールします

    sudo apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

  2. 次に、ruby 1.9.2 を再インストールします。

    rvm 再インストール 1.9.2 && rvm 使用 1.9.2

于 2012-06-08T12:59:08.323 に答える