Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 运行rails S时出现分段错误(无法编译nokogiri)_Ruby On Rails_Ruby_Nokogiri - Fatal编程技术网

Ruby on rails 运行rails S时出现分段错误(无法编译nokogiri)

Ruby on rails 运行rails S时出现分段错误(无法编译nokogiri),ruby-on-rails,ruby,nokogiri,Ruby On Rails,Ruby,Nokogiri,我已经在配置地狱里呆了两天,我尝试了几乎所有关于堆栈溢出的方法来修复它。我觉得我尝试过的一些东西可能让事情变得更糟。我使用了RVM,然后我尝试了使用rbenv,现在我又回到了使用RVM。我不确定是否有残留的rbenv导致了这一点或什么,但我按照指示将其完全移除 我当前遇到的错误如下: ruby-v: ruby 1.9.3p547 (2014-05-14 revision 45962) [x86_64-darwin13.4.0] rails-v: Rails 3.2.19 xcode选择-

我已经在配置地狱里呆了两天,我尝试了几乎所有关于堆栈溢出的方法来修复它。我觉得我尝试过的一些东西可能让事情变得更糟。我使用了RVM,然后我尝试了使用rbenv,现在我又回到了使用RVM。我不确定是否有残留的rbenv导致了这一点或什么,但我按照指示将其完全移除

我当前遇到的错误如下:

ruby-v:

ruby 1.9.3p547 (2014-05-14 revision 45962) [x86_64-darwin13.4.0] 
rails-v:

Rails 3.2.19
xcode选择-p:

/Library/Developer/CommandLineTools
宝石环境:

RubyGems Environment:
  - RUBYGEMS VERSION: 2.4.3
  - RUBY VERSION: 2.1.5 (2014-11-13 patchlevel 273) [x86_64-darwin14.0]
  - INSTALLATION DIRECTORY: /Users/acumendigital/.rvm/gems/ruby-2.1.5
  - RUBY EXECUTABLE: /Users/acumendigital/.rvm/rubies/ruby-2.1.5/bin/ruby
  - EXECUTABLE DIRECTORY: /Users/acumendigital/.rvm/gems/ruby-2.1.5/bin
  - SPEC CACHE DIRECTORY: /Users/acumendigital/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: /etc
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-darwin-14
  - GEM PATHS:
     - /Users/acumendigital/.rvm/gems/ruby-2.1.5
     - /Users/acumendigital/.rvm/gems/ruby-2.1.5@global
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :backtrace => false
     - :bulk_threshold => 1000
     - :sources => ["https://rubygems.org/", "http://rubygems.org"]
  - REMOTE SOURCES:
     - https://rubygems.org/
     - http://rubygems.org
  - SHELL PATH:
     - /Users/acumendigital/.rvm/gems/ruby-2.1.5/bin
     - /Users/acumendigital/.rvm/gems/ruby-2.1.5@global/bin
     - /Users/acumendigital/.rvm/rubies/ruby-2.1.5/bin
     - /usr/local/bin
     - /usr/bin
     - /bin
     - /user/sbin
     - /sbin
     - /user/local/bin
     - /usr/local/git/bin
     - /Users/acumendigital/.gem/ruby/1.8/bin
     - /opt/nginx/sbin
     - /Users/acumendigital/.rvm/bin
rvm信息:

ruby-1.9.3-p547@ums:

  system:
    uname:       "Darwin Evans-MacBook-Pro.local 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64"
    system:      "osx/10.9/x86_64"
    bash:        "/bin/bash => GNU bash, version 3.2.51(1)-release (x86_64-apple-darwin13)"
    zsh:         "/bin/zsh => zsh 5.0.2 (x86_64-apple-darwin13.0)"

  rvm:
    version:      "rvm 1.26.3 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]"
    updated:      "8 minutes 33 seconds ago"
    path:         "/Users/acumendigital/.rvm"

  ruby:
    interpreter:  "ruby"
    version:      "1.9.3p547"
    date:         "2014-05-14"
    platform:     "x86_64-darwin13.4.0"
    patchlevel:   "2014-05-14 revision 45962"
    full_version: "ruby 1.9.3p547 (2014-05-14 revision 45962) [x86_64-darwin13.4.0]"

  homes:
    gem:          "/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@ums"
    ruby:         "/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547"

  binaries:
    ruby:         "/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin/ruby"
    irb:          "/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin/irb"
    gem:          "/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin/gem"
    rake:         "/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin/rake"

  environment:
    PATH:         "/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@ums/bin:/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@global/bin:/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin:/Users/acumendigital/.rvm/bin:/usr/local/bin:/usr/bin:/bin:/user/sbin:/sbin:/user/local/bin:/usr/local/git/bin:/Users/acumendigital/.gem/ruby/1.8/bin:/opt/nginx/sbin"
    GEM_HOME:     "/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@ums"
    GEM_PATH:     "/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@ums:/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@global"
    MY_RUBY_HOME: "/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547"
    IRBRC:        "/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/.irbrc"
    RUBYOPT:      ""
    gemset:       "ums"
ruby-1.9.3-p547@ums:
系统:
uname:“Darwin Evans-MacBook-Pro.local 13.4.0 Darwin内核版本13.4.0:Sun Aug 17 19:50:11 PDT 2014;根目录:xnu-2422.115.4~1/RELEASE_X86_64 X86_64”
系统:“osx/10.9/x86_64”
bash:“/bin/bash=>GNUBash,版本3.2.51(1)-发布(x86_64-apple-darwin13)”
zsh:“/bin/zsh=>zsh5.0.2(x86_64-apple-darwin13.0)”
rvm:
版本:“rvm 1.26.3(最新版本)作者:韦恩E.塞根,迈克尔·帕皮斯[https://rvm.io/]"
更新:“8分33秒前”
路径:“/Users/acumendigital/.rvm”
红宝石:
翻译:“ruby”
版本:“1.9.3p547”
日期:“2014-05-14”
平台:“x86_64-darwin13.4.0”
补丁级别:“2014-05-14修订版45962”
完整版本:“ruby 1.9.3p547(2014-05-14修订版45962)[x86_64-darwin13.4.0]”
家园:
gem:“/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@ums"
ruby:“/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547”
二进制文件:
ruby:“/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin/ruby”
irb:“/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin/irb”
gem:“/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin/gem”
rake:“/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin/rake”
环境:
路径:“/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@ums/bin:/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@global/bin:/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/bin:/Users/acumendigital/.rvm/bin:/usr/local/bin:/usr/bin:/bin:/user/sbin:/user/local/bin:/usr/local/git/bin:/Users/acumendigital/.gem/ruby/1.8/bin:/opt/nginx/sbin“
GEM_HOME:“/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@ums"
GEM_路径:“/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@ums:/Users/acumendigital/.rvm/gems/ruby-1.9.3-p547@global"
我的RUBY主页:“/Users/acumendigital/.rvm/rubies/RUBY-1.9.3-p547”
IRBRC:“/Users/acumendigital/.rvm/rubies/ruby-1.9.3-p547/.IRBRC”
鲁比奥普特:“
宝石:“嗯”

老实说,我不知道还能尝试什么。非常感谢您的帮助

注意,您的
gem env
表示您正在运行Ruby 2.1.5:

- RUBY VERSION: 2.1.5 (2014-11-13 patchlevel 273) [x86_64-darwin14.0]
而您的
ruby-v
显示了1.9.3:

ruby 1.9.3p547 (2014-05-14 revision 45962) [x86_64-darwin13.4.0] 
这说明你的系统真的搞混了

首先,通过运行以下命令捕获Ruby环境中当前gem的列表:

gem list --no-version > ~/gem_list
它在用户主目录的“gem_list”文件中存储当前安装的没有版本号的gem列表

接下来,我建议您执行
rvm内爆
,然后退出shell并重新打开终端窗口。跑

grep rvm ~/.bash_profile
并查找正在初始化RVM的行。从你的~/.bash_档案中删除这些内容

然后,在同一文件中查找提到rbenv的行:

grep rbenv ~/.bash_profile
并移除它们

然后按照处的说明重新安装RVM。仔细阅读说明并按照说明进行单用户安装。一旦RVM完成安装,请阅读它输出的文本,并按照它的说明设置~/.bash_配置文件

此时,您应该能够使用以下方法安装Ruby:

rvm install 2.1.5
完成运行后:

rvm use 2.1.5 --default
在这一点上,RVM和您的环境应该是愉快的,您可以重新安装gems。运行:

xargs gem install --conservative < ~/gem_list
注意:您运行的是MacOSX机器,苹果在上面预装了Ruby。切勿使用
sudo
安装任何gems或尝试删除Ruby-Apple安装。他们把它放在那里是为了让运行一些代码成为可能,你也可以用它来运行东西,但是把它当作是属于系统的。这就是我们使用RVM的原因,它提供了一个可以安全使用的Ruby版本,而不必冒着破坏默认版本的风险

互联网上有很多教程和博客,声称要告诉我们如何在我们的机器上安装RVM,但大多数都过时了,所以忽略它们。相反,请遵循RVM作者在其网站上所写的内容。安装页面显示:

外部教程

请注意,任何外部教程都不受支持,无论它们是否有效。教程很棒,但是我们已经花费了大量的人工调试安装过程。请仅使用此站点的安装过程,因为这是唯一受支持的安装类型和方法


因此,我尝试了铁皮人提供的步骤,但我仍然受到seg故障的影响。我最终访问了一位高级开发人员,他确定问题在于我的开放式ssl配置不正确。我用计算机解决了这个问题

brew link --force openssl
然后我移除并重新安装了宝石和红宝石。现在一切都好了。谢谢大家花时间回答我的问题,我希望这对其他人有所帮助。特别感谢锡人花时间写下详细的回复

我还注意到,当我打包时

Your bundle is complete!
It was installed into ./vendor/bundle
所以我删除了./vendor/bundle with

rm -rf ./vendor/bundle

然后重新处理

您可以发布服务器日志输出吗?您可能需要安装一个系统库文件,才能使其像libxml2或其他东西一样工作。显然,您可以编译Nokogiri,因为这是正在崩溃的已编译库。你还有别的问题。你试过Rails 2.1.x吗?不要把你的错误信息放在其他网站上。当链接断开时,因为它们总是断开,你
rm -rf ./vendor/bundle