0

そのため、友人とジェムセットをいじっていて、誤ってジェムセットを削除してしまいました。何が起こったのか分からなかったので、私はちょっとそれを一掃しました。


それから、私が取り組んできた古いアプリの「rails server」を実行しようとしましたが、2 分間ほど何も起こらず、最後にエラーが発生しました。

/Users/Nick/.rvm/bin/ruby: line 6: /Users/Nick/.rvm/bin/ruby: Argument list too long
/Users/Nick/.rvm/bin/ruby: line 6: /Users/Nick/.rvm/bin/ruby: Undefined error: 0

それで、以下に提案されているすべてのことを行ったところ、あらゆる種類のエラーが発生しました。エラーごとに個別の質問を作成すると、スタックオーバーフローがめちゃくちゃになると思うので、ここでこれを解決するために何らかの順序を付けたいと思います。

今、私はバックトラックして何が起こったのかを理解しようとしています...答えでこれらの異なるコマンドを実行するたびに、何が起こっているのかわからないまま物事を変えています。


Ruby のバージョンをインストールしようとすると、次のエラーが発生します。

apple-gcc42 is not available in PATH, try:

brew unlink apple-gcc42 && brew link apple-gcc42

and make sure that apple-gcc42 is available in your PATH:

which gcc-4.2

xCodeをインストールするとこれが解決するとどこかで読んだので、インストールしました。同じエラーが発生しますが。


そのエラーから最初の提案を実行しようとすると、次のようになります。

Unlinking /usr/local/Cellar/apple-gcc42/4.2.1-5666.3... 0 links removed
Linking /usr/local/Cellar/apple-gcc42/4.2.1-5666.3... Warning: Could not link apple-gcc42.     
Unlinking...

Error: Could not symlink file: /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/include/gcc
/usr/local/include is not writable. You should change its permissions.

2番目の提案を実行すると、返されます

gcc-4.2 not found

通常、「ruby -v」または「rails -v」を実行すると、バージョン名が返されます。「rails s」を実行したときとまったく同じエラーが返されるだけです

gemsets をデフォルトからグローバルに切り替えようとすると、

To install do: 'rvm install ruby-1.9.3-p125'

しかし、それをインストールしようとすると、同じ gcc エラーが発生します。


Railsをインストールしようとすると、10回ほどインストールしたlibyamlのインストールに関する次のエラーが表示されます。

➜  app3 git:(add_food_servings) ✗ gem install rails
 /Users/Nick/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/yaml.rb:4:in `<top (required)>':
 It seems your ruby installation is missing psych (for YAML output).
 To eliminate this warning, please install libyaml and reinstall your ruby.
 /Users/Nick/.rvm/rubies/ruby-2.0.0-  
  p247/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require':  
 dlopen(/Users/Nick/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/x86_64-darwin11.4.2/psych.bundle, 9): Library not loaded: /usr/local/opt/libyaml/lib/libyaml-0.2.dylib (LoadError)
  Referenced from: /Users/Nick/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/x86_64-darwin11.4.2/psych.bundle

私の質問は... 何が起こっているのか、どうすれば Rails s を実行してアプリを安心して操作できたときの状態に戻ることができるのでしょうか!? 笑

4

2 に答える 2

1

あなたが得たエラー:

/Users/Nick/.rvm/bin/ruby: line 6: /Users/Nick/.rvm/bin/ruby: Argument list too long /Users/Nick/.rvm/bin/ruby: line 6: /Users/Nick/.rvm/bin/ruby: Undefined error: 0

は、rvm ruby​​ が使用されていないことを示しています。作業する前に、最初に ruby​​ を使用していることを確認してください。

rvm use ruby

現在のディレクトリ プロジェクト用に定義されている ruby​​ を使用する場合:

rvm use --install --create .

--installおよびフラグは、--create不足している ruby​​ と gemset を処理します。

于 2013-07-23T18:59:13.173 に答える
1

明確にしましょう: Gemfileはgemsetから変更できません

Gemset の目標は、アプリケーションに gem の独立したインストールを提供することです。

RVM Gemset を使用するには、次の手順を実行する必要があります。

  1. 最新のrvmがあることを確認します (コンソールで実行):

    rvm が安定する

  2. 所有している Ruby のバージョンrvm listと gemsetを確認します。rvm gemset list

  3. 新しい gemset の名前がmyappであるとします。次のように作成する必要があります。

    rvm gemset は myapp を作成します

  4. アプリケーションのルート フォルダー内に次のファイルを追加します: .ruby-gemsetおよび.ruby-version

    .ruby-versionには使用する Ruby バージョンが含まれ、.ruby-gemsetには gemset 名が含まれます

  5. コンソールを閉じて、新しいコンソールを開きます。プロジェクト フォルダーに移動すると、新しい gemset の準備ができているはずです。ステップ 2を繰り返して、gemset が正しく構成されていることを確認します。

  6. バンドラーをインストールします。

    gem install bundler バンドル インストール

: .ruby-* 構成ファイルを作成します。

echo "ruby-1.9.3-p429" > .ruby-version

echo "myapp" > .ruby-gemset

ノート:

現在の gemset をデフォルトにするには、次の手順を実行します。rvm use ruby-1.9.3-p429@myapp --default

于 2013-07-23T15:00:34.353 に答える