我正在尝试在ruby 2.1.2下安装ruby-debug-ide gem。这要在Rubymine中调试。
它适用于ruby1.9.3但不适用于此版本。 这是错误:
1.3.5/lib/debugger/ruby_core_source/ruby-2.1.2-p95/***internal.h:209: error: expected ‘;’, ‘,’ or ‘)’ before ‘x’***
这是输出。
我希望能够以某种方式进行观察或调试。顺便说一下,快速解决方案也很棒: - )
Fetching: ruby-debug-ide-0.4.22.gem (100%)
Building native extensions. This could take a while...
ERROR: Error installing ruby-debug-ide:
ERROR: Failed to build gem native extension.
/Users/ohad/.rvm/rubies/ruby-2.1.2/bin/ruby mkrf_conf.rb
Installing base gem
Building native extensions. This could take a while...
Building native extensions. This could take a while...
ERROR: Failed to build gem native extension.
/Users/ohad/.rvm/rubies/ruby-2.1.2/bin/ruby extconf.rb
checking for vm_core.h... no
checking for vm_core.h... no
checking for vm_core.h... yes
creating Makefile
make "DESTDIR=" clean
make "DESTDIR="
compiling breakpoint.c
compiling context.c
compiling debase_internals.c
In file included from /Users/ohad/.rvm/gems/ruby-2.1.2@v1_v2/gems/debugger-ruby_core_source-1.3.5/lib/debugger/ruby_core_source/ruby-2.1.2-p95/method.h:14,
from /Users/ohad/.rvm/gems/ruby-2.1.2@v1_v2/gems/debugger-ruby_core_source-1.3.5/lib/debugger/ruby_core_source/ruby-2.1.2-p95/vm_core.h:24,
from ./hacks.h:1,
from debase_internals.c:2:
/Users/ohad/.rvm/gems/ruby-2.1.2@v1_v2/gems/debugger-ruby_core_source-1.3.5/lib/debugger/ruby_core_source/ruby-2.1.2-p95/***internal.h:209: error: expected ‘;’, ‘,’ or ‘)’ before ‘x’***
make: *** [debase_internals.o] Error 1
make failed, exit code 2
Gem files will remain installed in /Users/ohad/.rvm/gems/ruby-2.1.2@v1_v2/gems/debase-0.0.9 for inspection.
Results logged to /Users/ohad/.rvm/gems/ruby-2.1.2@v1_v2/extensions/x86_64-darwin-13/2.1.0-static/debase-0.0.9/gem_make.out
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:89:in `run'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:51:in `block in make'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:43:in `each'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:43:in `make'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/ext_conf_builder.rb:47:in `block in build'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tempfile.rb:324:in `open'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/ext_conf_builder.rb:17:in `build'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:161:in `block (2 levels) in build_extension'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:160:in `chdir'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:160:in `block in build_extension'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:159:in `synchronize'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:159:in `build_extension'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:198:in `block in build_extensions'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:195:in `each'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/ext/builder.rb:195:in `build_extensions'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/installer.rb:677:in `build_extensions'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/installer.rb:232:in `install'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/request_set.rb:142:in `block in install'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/request_set.rb:126:in `each'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/request_set.rb:126:in `install'
/Users/ohad/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/dependency_installer.rb:389:in `install'
mkrf_conf.rb:34:in `rescue in <main>'
mkrf_conf.rb:27:in `<main>'
rake failed, exit code 1
Gem files will remain installed in /Users/ohad/.rvm/gems/ruby-2.1.2@v1_v2/gems/ruby-debug-ide-0.4.22 for inspection.
Results logged to /Users/ohad/.rvm/gems/ruby-2.1.2@v1_v2/extensions/x86_64-darwin-13/2.1.0-static/ruby-debug-ide-0.4.22/gem_make.out
另外,我无法使用ruby rvm reinstall ruby-2.1.2 --disable-binary
安装此错误
`dyld: Library not loaded: @@HOMEBREW_CELLAR@@/openssl/1.0.1i/lib/libssl.1.0.0.dylib
Referenced from: /usr/local/opt/openssl/bin/openssl
Reason: image not found
Failed reading certificates path for '/usr/local/opt/openssl/bin/openssl' with return code: ().
RVM autolibs is now configured with mode '2' => 'check and stop if missing',
please run `rvm autolibs enable` to let RVM do its job or run and read `rvm autolibs [help]`
or visit https://rvm,, for more information.
Requirements installation failed with status: 133.`
答案 0 :(得分:3)
问题似乎是gem debugger-ruby_core_source
找不到头文件vm_core.h
,这是Ruby源代码的一部分。要仅安装源(假设您已经安装了二进制文件),请执行以下操作:
$ rvm fetch ruby-2.1.2
你也可以从源码重新安装(有点慢,但这是一个好习惯):
$ rvm reinstall ruby-2.1.2 --disable-binary
根据您的其他错误消息进行更新
根据您的消息,您需要安装OpenSSL:
$ brew install openssl
总结一下:
debugger-ruby_core_source
,因为它需要
Ruby版本的Ruby源代码。要修复该类型rvm autolibs homebrew
,以便RVM在需要时安装缺少的软件包(您可能需要root权限并在请求时输入密码)。这也让RVM从现在开始处理依赖问题,你不需要再次输入命令。
答案 1 :(得分:1)
我遇到了类似的问题,并在安装debugger-ruby_core_source
之前手动安装了ruby-debug-ide
gem。
答案 2 :(得分:0)
今天我遇到了这种情况,并在运行brew unlink openssl && brew link openssl --force
希望它有所帮助。