我是初学者,当我尝试安装Bundle时,我无法理解如何修复错误。我正在学习Schneems课程(目前正在做routes_controller_exercise)。
这是我的错误:
bundle update json
我不知道该怎么做。我是初学者所以...请跟我好好的!我一直在网上尝试很多解决方案,但到目前为止还没有任何效果!我正在使用El Capitan 10.11.1。
我已使用此链接设置Ruby:http://guides.railsgirls.com/install/#virtual-machine。
立即执行此练习:https://github.com/schneems/routes_controller_exercise
所以我做了:
Installing eventmachine 0.12.10 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/Users/admin/.rbenv/versions/2.2.3/bin/ruby -r ./siteconf20151101-99125-1vfqvuu.rb extconf.rb
checking for rb_trap_immediate in ruby.h,rubysig.h... no
checking for rb_thread_blocking_region()... no
checking for inotify_init() in sys/inotify.h... no
checking for __NR_inotify_init in sys/syscall.h... no
checking for writev() in sys/uio.h... yes
checking for rb_thread_check_ints()... yes
checking for rb_time_new()... yes
checking for sys/event.h... yes
checking for sys/queue.h... yes
creating Makefile
make "DESTDIR=" clean
make "DESTDIR="
compiling binder.cpp
In file included from binder.cpp:20:
./project.h:103:10: fatal error: 'openssl/ssl.h' file not found
#include <openssl/ssl.h>
^
1 error generated.
make: *** [binder.o] Error 1
make failed, exit code 2
Gem files will remain installed in /Users/admin/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/eventmachine-0.12.10 for inspection.
Results logged to /Users/admin/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/extensions/x86_64-darwin-15/2.2.0-static/eventmachine-0.12.10/gem_make.out
An error occurred while installing eventmachine (0.12.10), and Bundler cannot continue.
Make sure that `gem install eventmachine -v '0.12.10'` succeeds before bundling.
ip-10-0-66-6:routes_controller_exercise Admin$ gem install eventmachine -v '0.12.10'
Building native extensions. This could take a while...
ERROR: Error installing eventmachine:
ERROR: Failed to build gem native extension.
直到:
{{1}}
好的,我已经卸载了rails并重新安装了斯坦福网站。
现在一切都很完美!我不知道是什么问题,但现在我安装Bundle没有任何问题。
答案 0 :(得分:2)
问题的一部分是由于rb_str_new
的变化。
这是GitHub页面上的相关问题:https://github.com/flori/json/issues/229
根据我的理解,贡献者决定不解决这个问题,因为它在json 1.8.3中应该正常工作。建议您升级到该版本。 json gem有一个非常稳定的API,因此向后兼容通常不是问题。
如果您使用的是Bundler,则应使用Gemfile
转到gem 'json', '>=1.8.3'
并将json版本更改为1.8.3或更高版本。
答案 1 :(得分:-1)
在Gemfile中添加
gem'json','1.7.3'
之后,
捆绑安装