我在这里的Windows 7 x64,我试图从头开始安装Ruby on Rails。我刚刚安装了RubyInstaller 1.9.3-p429
,现在运行DevKit-tdm-32-4.5.2-20111229-1559-sfx
。做完ruby dk.rb install --force
后。我试着测试它的设置是否正确,但遇到:
c:DevKit>gem install RedCloth --platform=ruby
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
The system cannot find the path specified.
ERROR: Error installing RedCloth:
ERROR: Failed to build gem native extension.
C:/Ruby193/bin/ruby.exe extconf.rb
checking for main() in -lc... no
creating Makefile
Gem files will remain installed in C:/Ruby193/lib/ruby/gems/1.9.1/gems/RedCloth-4.2.9 for inspection.
Results logged to C:/Ruby193/lib/ruby/gems/1.9.1/gems/RedCloth-4.2.9/ext/redcloth_scan/gem_make.out
这发生在所有需要Devkit的宝石上。我想我必须设置指定的路径,但我不知道这是什么意思。我该怎么做,或者说真正的问题是什么?
公立小学一点背景。我确实安装了RailsInstaller,但我得到了同样的错误,所以我删除了所有内容。我也安装了NodeJs,但也删除了。为了从头开始,我完全删除了PATH变量。
尝试RailsInstaller给我这个错误:
$ gem install json -v 1.8.0
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
The system cannot find the path specified.
ERROR: Error installing json:
ERROR: Failed to build gem native extension.
c:/RailsInstaller/Ruby1.9.3/bin/ruby.exe extconf.rb
creating Makefile
Gem files will remain installed in c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/json-1.8.0 for inspection.
Results logged to c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/json-1.8.0/ext/json/ext/generator/gem_make.out
我讨厌撞一个旧的线程,但我希望添加到答案,以防有人来了(可能因为这是在谷歌搜索"Devkit PATH错误"的顶部)。
在将DevKit解压到一个永久目录后,在您导航到shell中的安装文件夹并输入"ruby dk. exe"。请确保您实际执行了下一步并安装 devkit。执行init命令后,执行"ruby dk"。
您需要在您的环境路径中包含Devkit/bin目录。首先,找出Devkit的安装位置。对于本例,我们假定它位于C:Devkit
。
接下来打开高级系统设置(在MyComputer =>属性下可访问),然后单击环境变量按钮。在"用户变量"部分,编辑"路径"条目,使其包含C:Devkitbin
。请注意,该条目是用分号分隔的,因此您需要在该字符串后面添加一个(或前置)分号。
当我尝试安装Cucumber直到我尝试使用--verbose
参数时,我面临着完全相同的问题。出于某些原因,这对我来说是可行的,但我不能真正解释为什么。我不认为这是一个解决方案,但值得一试。
在这些错误中对我最有效的方法是:https://github.com/oneclick/rubyinstaller/wiki/Troubleshooting#wiki-gems_fails_comspec_autorun
如果你按照https://github.com/oneclick/rubyinstaller/wiki/Development-Kit#installation-instructions上的标准指南安装了devkit,那么它不是devkit路径,而是不正确的Autorun regex键或其他工具设置的不正确的命令处理器干扰了ruby gem的安装。
我遇到过这个问题,Windows 8 x64, Ruby 2.2.3.
我从许多帖子和许多答案中尝试了所有方法,但只有这个对我有效:删除旧的devkits并重新安装。
我让它工作后,这些步骤:
-
删除所有安装过devkit的文件夹
-
安装(x64 -64位仅限)DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe from http://rubyinstaller.org/downloads/
-
执行并安装在没有空间或路径上的任何地方(我做了c:devkit)
-
进入您的系统环境,并添加到路径c:devkit和c:devkitbin
-
以管理员身份打开CMD提示符,进入c:devkit并键入:
ruby dk.rb init ruby dk.rb install --force
https://github.com/oneclick/rubyinstaller/wiki/Troubleshooting#error-failed-to-build-gem-native-extension
详细说明了可能导致此问题的几个场景。只是以防链接断了。第一种是您的COMSPEC系统变量不再具有cmd.exe的完整路径。第二个是注册表中某种自动运行的地方——这是你检查的地方:
REG QUERY "HKCUSoftwareMicrosoftCommand Processor" /s
REG QUERY "HKLMSoftwareMicrosoftCommand Processor" /s
REG QUERY "HKCUSoftwareWow6432NodeMicrosoftCommand Processor" /s
REG QUERY "HKLMSoftwareWow6432NodeMicrosoftCommand Processor" /s
如果你看到任何自动运行,你删除它们,像这样:
REG DELETE "HKCUSoftwareMicrosoftCommand Processor" /v AutoRun