我已经在互联网上寻找过去4个小时我一直在寻找的这个问题的答案,但我已经走到了尽头......
我通过rubygems.org上的安装程序安装了RoR。我经历了很多教程并决定开始使用'gem install blog'的项目。我已经安装了大部分,但第二次尝试“安装捆绑”我收到此错误:
Gem :: Ext :: BuildError:错误:无法构建gem原生扩展。
c:/Ruby21/bin/ruby.exe extconf.rb creating Makefile
让“DESTDIR =”干净 0 [main] rm 8308 open_stackdumpfile:将堆栈跟踪转储到rm.ex mp make:[clean-static]错误5(忽略) 0 [main] rm 8316 open_stackdumpfile:将堆栈跟踪转储到rm.ex mp make:[clean]错误5(忽略)
生成“DESTDIR =”生成generator-i386-mingw32.def编译 generator.c make:gcc:找不到命令make:*** [generator.o]错误 127
make failed,退出代码2
Gem文件将保持安装状态 c:/Ruby21/lib/ruby/gems/2.1.0/gems/j进行检查。记录结果 到c:/Ruby21/lib/ruby/gems/2.1.0/extensions/x86-mingw32/ n-1.8.2 / gem_make.out安装json(1.8.2)时发生错误, 和Bundler无法确保
gem install json -v '1.8.2'
在捆绑之前成功。
现在,我已经尝试自己安装JSON,我已经安装了Devkit并将其运行到我的项目中,但我不知所措。以下是我尝试安装JSON时会发生的情况。
暂时增强PATH以包含Devkit ...构建本机 扩展。这可能需要一段时间...错误:安装json时出错: 错误:无法构建gem原生扩展。
Gem :: Ext :: BuildError:错误:无法构建gem原生扩展。
c:/Ruby21/bin/ruby.exe extconf.rb creating Makefile
让“DESTDIR =”干净 0 [main] rm 8308 open_stackdumpfile:将堆栈跟踪转储到rm.ex mp make:[clean-static]错误5(忽略) 0 [main] rm 8316 open_stackdumpfile:将堆栈跟踪转储到rm.ex mp make:[clean]错误5(忽略)
生成“DESTDIR =”生成generator-i386-mingw32.def编译 generator.c make:gcc:找不到命令make:*** [generator.o]错误 127
make failed,退出代码2
Gem文件将保持安装状态 c:/Ruby21/lib/ruby/gems/2.1.0/gems/j进行检查。记录结果 到c:/Ruby21/lib/ruby/gems/2.1.0/extensions/x86-mingw32/ n-1.8.2 / gem_make.out安装json(1.8.2)时发生错误, 和Bundler无法确保
gem install json -v '1.8.2'
在捆绑之前成功。
我已经尝试了所有我能想到的东西(这不是很多,因为我对整个Ruby语言都很新)。
任何可以给予的帮助都会很棒!我不是在寻找讲义,我真的很想了解到底发生了什么。
答案 0 :(得分:2)
我通过重新安装Ruby解决了这个问题。
我怀疑升级到OS X Yosemite在昨天升级时引起了问题。
错误:
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/Users/cartersowers/.rbenv/versions/2.1.5/bin/ruby extconf.rb
creating Makefile
make "DESTDIR=" clean
make "DESTDIR="
compiling generator.c
linking shared-object json/ext/generator.bundle
ld: library not found for -lgmp
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [generator.bundle] Error 1
make failed, exit code 2
Gem files will remain installed in /Users/cartersowers/projects/soomo/vendor/bundle/ruby/2.1.0/gems/json-1.8.2 for inspection.
Results logged to /Users/cartersowers/projects/soomo/vendor/bundle/ruby/2.1.0/extensions/x86_64-darwin-13/2.1.0-static/json-1.8.2/gem_make.out
An error occurred while installing json (1.8.2), and Bundler cannot continue.
Make sure that `gem install json -v '1.8.2'` succeeds before bundling.
然后我重新安装了
rbenv install 2.1.5
一切都很好。
答案 1 :(得分:0)
这可能有所帮助,在SO上提出了类似的问题:The 'json' native gem requires installed build tools
答案 2 :(得分:0)
尝试利用控制台权限并以管理员身份(cmd.exe
)运行。然后使用ruby命令gem install blog
。
当您第二次运行安装时,Ruby会询问您是否要覆盖文件。如果您没有更改任何内容,可以选择a - overwrtie all