1

Ruby-on-Rails をインストールしていましたが、Ruby のバージョンは 1.9.3 でした。Railsインストーラーでインストールしました。私は RoR を使い始めたばかりなので、最新バージョンから始めて Ruby on Rails チュートリアルを進めたいと思いました。Rails は簡単に更新できましたが、Ruby 自体はそうではありませんでした。

既存の RailsInstaller をアンインストールし、c:\Railsinstaller ディレクトリを削除して、RailsInstaller の最新バージョン、バージョン 3.0.0-alpha.1 をダウンロードしました。

インストール時に、コマンド プロンプト ウィンドウが起動し、git、ruby、および rails のインストール情報が一覧表示されます。代わりに、次のエラーが発生しました。

The system cannot find the path specified.

 Rails Environment Configuration.  
C:/RailsInstaller/scripts/config_check.rb:28:in ``': No such file or directory -  
 rails -v (Errno::ENOENT)  
        from C:/RailsInstaller/scripts/config_check.rb:28:in `run'  
        from C:/RailsInstaller/scripts/config_check.rb:83:in `<main>'  
C:\Sites>

行 28 は、このブロックの一部です。

def run(command)
  $stderr.puts "Running #{command}" if Config[:debug]
  %x{#{command}}.chomp
end

83行目は、「puts」ブロックの内側です。

  version:    #{run "rails -v"}

「rails -v」を手動で実行する

C:\Sites>rails -v
'rails' is not recognized as an internal or external command,
operable program or batch file.

「ruby rails.rb」を試行しています ruby​​: そのようなファイルまたはディレクトリはありません -- rails.rb (LoadError)

Rails gem を手動でインストールしようとしています

c:\Sites>gem install rails --version 4.0.0  

Fetching: i18n-0.6.4.gem (100%)  
Successfully installed i18n-0.6.4  
Fetching: atomic-1.1.10.gem (100%)  
Temporarily enhancing PATH to include DevKit...  
Building native extensions.  This could take a while...  
The system cannot find the path specified.  
ERROR:  Error installing rails:  
        ERROR: Failed to build gem native extension.  

    C:/RailsInstaller/Ruby2.0.0/bin/ruby.exe extconf.rb  
creating Makefile  


Gem files will remain installed in C:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0  
.0/gems/atomic-1.1.10 for inspection.  
Results logged to C:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0.0/gems/atomic-1.  
1.10/ext/gem_make.out  

gem_make.out には以下のみが含まれます。

C:/RailsInstaller/Ruby2.0.0/bin/ruby.exe extconf.rb  
creating Makefile

テストのために Windows XP マシンに Railsinstaller 3.0.0 をインストールしようとしましたが、インストール後に同じエラーが発生しました。働きました。

新しいインストールが正常に機能するのを妨げている何かが以前のインストールから残っていましたか?

何かがまだ Ruby1.9.3 の forlder および/またはサブフォルダーにアクセスしようとして失敗していると思いますが、そのディレクトリを参照するものが見つかりません。

4

2 に答える 2

4

一連の追加の調査と外部の支援の後、次のことがわかりました。

指示に従って RubyInstaller と DevKit の両方をインストールしましたが、gem のインストール中に次のようなメッセージが表示されます。

C:\devkit>gem install rdiscount --platform=ruby
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing rdiscount:
       ERROR: Failed to build gem native extension.

C:/ruby/bin/ruby.exe extconf.rb
C:/ruby/bin/ruby.exe: No such file or directory -- extconf.rb
(LoadError)

または時々これだけ:

ERROR:  Error installing rdiscount:
       ERROR: Failed to build gem native extension.

       C:/Ruby187/bin/ruby.exe extconf.rb

これは私たちのグループにこことここで報告されています。

何度も調査を行った結果、この問題の考えられる原因として、COMSPEC 環境変数 (シナリオ A) と AutoRun レジストリ設定 (シナリオ B) の 2 つが見つかりました。両方について以下に説明します。

シナリオA

コマンド プロンプトを使用して、次のコマンドを呼び出します。

SET COMSPEC

出力に、その変数の値として cmd.exe とは異なるものが表示される場合は、cmd.exe を使用するように調整してください。

一部のツールは、Ruby が子プロセスを呼び出すのを妨げるコマンド プロセッサ コマンドを変更する場合があります。

それを変更して、gem を再度インストールしてみてください。

シナリオB

問題が解決しない場合は、同じコマンド プロンプトで次のコマンドを呼び出します。

REG QUERY "HKCU\Software\Microsoft\Command Processor"
REG QUERY "HKLM\Software\Microsoft\Command Processor" /s

各行を個別に実行します。実行すると、次のように表示されます。

HKEY_CURRENT_USER\Software\Microsoft\Command Processor
    CompletionChar    REG_DWORD    0x9
    DefaultColor    REG_DWORD    0x0
    EnableExtensions    REG_DWORD    0x1
    PathCompletionChar    REG_DWORD    0x9

情報の列は、キー、タイプ、および値です。AutoRun という名前のキーが表示された場合、これがエラーの原因である可能性があります。

AutoRun は、Ruby が子プロセスの実行をいじるのを妨げ、その結果、gem のインストールに影響を与えます。次のコマンドで削除してください。

REG DELETE "HKCU\Software\Microsoft\Command Processor" /v AutoRun

完了したら、新しいコマンド プロンプトを開いて、gem のインストールを再度実行してみてください。

シナリオ B が原因となり、それが完了すると、正常に機能し始めました。

于 2013-07-21T18:34:00.550 に答える
0

これが実際にあなたの質問に答えていないことをお詫びしますが、それでもあなたにとって有益なアドバイスだと思います:

Virtualbox をダウンロードして Linux (Fedora、Ubuntu) をインストールし、その Linux 仮想マシンで Rails 開発を行うことを検討してください。Windows システムを台無しにすることはまったくありませんが、Rails の開発がはるかに簡単になります。

Windows で Rails を開発する人はほとんどおらず、誰もが Mac または Linux を使用しているようです。また、Windows での設定に問題を抱えている人をいつも読んでいます。Linux で開発するための無料のツールが世の中に出回っているのに、私には努力する価値がないように思えます。

繰り返しますが、これは実際には質問に対する適切な回答ではありません。問題の解決策が見つかったとしても、このアドバイスを検討することをお勧めします。Rails on Windows では、さらに多くの問題が発生する可能性があります。

于 2013-07-21T07:18:45.410 に答える