Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.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 使用本机扩展构建gem(gem::Installer::ExtensionBuildError)_Ruby On Rails_Ubuntu_Rubygems_Ruby On Rails 3_Bundler - Fatal编程技术网

Ruby on rails 使用本机扩展构建gem(gem::Installer::ExtensionBuildError)

Ruby on rails 使用本机扩展构建gem(gem::Installer::ExtensionBuildError),ruby-on-rails,ubuntu,rubygems,ruby-on-rails-3,bundler,Ruby On Rails,Ubuntu,Rubygems,Ruby On Rails 3,Bundler,我有以下配置: uname-a:Linux 2.6.24.2 i686 GNU/Linux(Ubuntu) ruby-v:ruby 1.9.0(2007-12-25修订版14709)[i486 linux] rails-v:rails 3.0.0.3 gem-v:1.3.5 rake——版本:rake,版本0.8.7 make-v:GNU make 3.81 宝石环境: RUBYGEMS版本:1.3.5 RUBY版本:1.9.0(2007-12-25 patchlevel 0)[i486 l

我有以下配置:

  • uname-a:Linux 2.6.24.2 i686 GNU/Linux(Ubuntu)
  • ruby-v:ruby 1.9.0(2007-12-25修订版14709)[i486 linux]
  • rails-v:rails 3.0.0.3
  • gem-v:1.3.5
  • rake——版本:rake,版本0.8.7
  • make-v:GNU make 3.81
  • 宝石环境:
    • RUBYGEMS版本:1.3.5
    • RUBY版本:1.9.0(2007-12-25 patchlevel 0)[i486 linux]
    • 安装目录:/usr/lib/ruby1.9/gems/1.9.0
    • RUBY可执行文件:/usr/bin/ruby1.9
    • 可执行目录:/usr/bin
    • RUBYGEMS平台:
    • 红宝石
    • x86Linux
    • 宝石路径:
      • /usr/lib/ruby1.9/gems/1.9.0
      • /root/.gem/ruby/1.9.0
    • GEM配置:
      • :update_sources=>true
      • :verbose=>true
      • :benchmark=>false
      • :backtrace=>false
      • :批量_阈值=>1000
    • 远程来源:
当我尝试这个简单的命令时:

gem install nokogiri
以下是我得到的:

# gem install nokogiri Building native extensions. This could take a while... ERROR: Error installing nokogiri: ERROR: Failed to build gem native extension. /usr/bin/ruby1.9 extconf.rb checking for iconv.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... yes checking for libxml/parser.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... yes checking for libxslt/xslt.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... yes checking for libexslt/exslt.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... yes checking for xmlParseDoc() in -lxml2... yes checking for xsltParseStylesheetDoc() in -lxslt... yes checking for exsltFuncRegister() in -lexslt... yes checking for xmlRelaxNGSetParserStructuredErrors()... yes checking for xmlRelaxNGSetParserStructuredErrors()... yes checking for xmlRelaxNGSetValidStructuredErrors()... yes checking for xmlSchemaSetValidStructuredErrors()... yes checking for xmlSchemaSetParserStructuredErrors()... yes creating Makefile make cc -I. -I/usr/include/libxml2 -I/usr/include -I/usr/include/ruby-1.9.0/i486-linux -I/usr/include/ruby-1.9.0 -I. -DHAVE_XMLRELAXNGSETPARSERSTRUCTUREDERRORS -DHAVE_XMLRELAXNGSETPARSERSTRUCTUREDERRORS -DHAVE_XMLRELAXNGSETVALIDSTRUCTUREDERRORS -DHAVE_XMLSCHEMASETVALIDSTRUCTUREDERRORS -DHAVE_XMLSCHEMASETPARSERSTRUCTUREDERRORS -I/opt/local/include/ -I/opt/local/include/libxml2 -I/opt/local/include -D_FILE_OFFSET_BITS=64 -fPIC -fno-strict-aliasing -g -fPIC -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -o xml_document_fragment.o -c xml_document_fragment.c In the included file starting at ./nokogiri.h:75, From ./xml_document_fragment.h:4, From xml_document_fragment.c:1: ./xml_document.h:5:16: error: st.h : No file or folder with this type make: *** [xml_document_fragment.o] Error 1 Gem files will remain installed in /usr/lib/ruby1.9/gems/1.9.0/gems/nokogiri-1.4.1 for inspection. Results logged to /usr/lib/ruby1.9/gems/1.9.0/gems/nokogiri-1.4.1/ext/nokogiri/gem_make.out u# gem install gherkin Building native extensions. This could take a while... ERROR: Error installing gherkin: ERROR: Failed to build gem native extension. /usr/bin/ruby1.9 extconf.rb checking for main() in -lc... yes creating Makefile make cc -I. -I/usr/include/ruby-1.9.0/i486-linux -I/usr/include/ruby-1.9.0 -I. -D_FILE_OFFSET_BITS=64 -fPIC -fno-strict-aliasing -g -fPIC -o gherkin_lexer_ar.o -c gherkin_lexer_ar.c /Users/aslakhellesoy/scm/gherkin/tasks/../ragel/i18n/ar.c.rl:11:16: erreur: re.h : Aucun fichier ou dossier de ce type make: *** [gherkin_lexer_ar.o] Erreur 1 Gem files will remain installed in /usr/lib/ruby1.9/gems/1.9.0/gems/gherkin-1.0.30 for inspection. Results logged to /usr/lib/ruby1.9/gems/1.9.0/gems/gherkin-1.0.30/ext/gherkin_lexer_ar/gem_make.out 以下是我得到的:

# gem install nokogiri Building native extensions. This could take a while... ERROR: Error installing nokogiri: ERROR: Failed to build gem native extension. /usr/bin/ruby1.9 extconf.rb checking for iconv.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... yes checking for libxml/parser.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... yes checking for libxslt/xslt.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... yes checking for libexslt/exslt.h in /opt/local/include/,/opt/local/include/libxml2,/opt/local/include,/opt/local/include,/opt/local/include/libxml2,/usr/local/include,/usr/local/include/libxml2,/usr/include,/usr/include/libxml2,/usr/include,/usr/include/libxml2... yes checking for xmlParseDoc() in -lxml2... yes checking for xsltParseStylesheetDoc() in -lxslt... yes checking for exsltFuncRegister() in -lexslt... yes checking for xmlRelaxNGSetParserStructuredErrors()... yes checking for xmlRelaxNGSetParserStructuredErrors()... yes checking for xmlRelaxNGSetValidStructuredErrors()... yes checking for xmlSchemaSetValidStructuredErrors()... yes checking for xmlSchemaSetParserStructuredErrors()... yes creating Makefile make cc -I. -I/usr/include/libxml2 -I/usr/include -I/usr/include/ruby-1.9.0/i486-linux -I/usr/include/ruby-1.9.0 -I. -DHAVE_XMLRELAXNGSETPARSERSTRUCTUREDERRORS -DHAVE_XMLRELAXNGSETPARSERSTRUCTUREDERRORS -DHAVE_XMLRELAXNGSETVALIDSTRUCTUREDERRORS -DHAVE_XMLSCHEMASETVALIDSTRUCTUREDERRORS -DHAVE_XMLSCHEMASETPARSERSTRUCTUREDERRORS -I/opt/local/include/ -I/opt/local/include/libxml2 -I/opt/local/include -D_FILE_OFFSET_BITS=64 -fPIC -fno-strict-aliasing -g -fPIC -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -o xml_document_fragment.o -c xml_document_fragment.c In the included file starting at ./nokogiri.h:75, From ./xml_document_fragment.h:4, From xml_document_fragment.c:1: ./xml_document.h:5:16: error: st.h : No file or folder with this type make: *** [xml_document_fragment.o] Error 1 Gem files will remain installed in /usr/lib/ruby1.9/gems/1.9.0/gems/nokogiri-1.4.1 for inspection. Results logged to /usr/lib/ruby1.9/gems/1.9.0/gems/nokogiri-1.4.1/ext/nokogiri/gem_make.out u# gem install gherkin Building native extensions. This could take a while... ERROR: Error installing gherkin: ERROR: Failed to build gem native extension. /usr/bin/ruby1.9 extconf.rb checking for main() in -lc... yes creating Makefile make cc -I. -I/usr/include/ruby-1.9.0/i486-linux -I/usr/include/ruby-1.9.0 -I. -D_FILE_OFFSET_BITS=64 -fPIC -fno-strict-aliasing -g -fPIC -o gherkin_lexer_ar.o -c gherkin_lexer_ar.c /Users/aslakhellesoy/scm/gherkin/tasks/../ragel/i18n/ar.c.rl:11:16: erreur: re.h : Aucun fichier ou dossier de ce type make: *** [gherkin_lexer_ar.o] Erreur 1 Gem files will remain installed in /usr/lib/ruby1.9/gems/1.9.0/gems/gherkin-1.0.30 for inspection. Results logged to /usr/lib/ruby1.9/gems/1.9.0/gems/gherkin-1.0.30/ext/gherkin_lexer_ar/gem_make.out u#gem安装小黄瓜 构建本机扩展。这可能需要一段时间。。。 错误:安装小黄瓜时出错: 错误:无法生成gem本机扩展。 /usr/bin/ruby1.9 extconf.rb 正在检查-lc中的main()。。。对 创建Makefile 制作 cc-I-I/usr/include/ruby-1.9.0/i486-linux-I/usr/include/ruby-1.9.0-I-D\u FILE\u OFFSET\u BITS=64-fPIC-fno严格别名-g-fPIC-o小黄瓜lexer\u ar.o-c小黄瓜lexer\u ar.c /Users/aslakhellesoy/scm/gherkin/tasks/。/ragel/i18n/ar.c.rl:11:16:erreur:re.h:Aucun fichier ou docsier de ce type 制造:**[gherkin_lexer_ar.o]错误1 Gem文件仍将安装在/usr/lib/ruby1.9/gems/1.9.0/gems/gherkin-1.0.30中以供检查。 结果记录到/usr/lib/ruby1.9/gems/1.9.0/gems/gherkin-1.0.30/ext/gherkin\u lexer\u ar/gem\u make.out 事实上,每当我尝试安装带有本机扩展的gem时,我都会遇到相同类型的错误


这会给任何人敲响警钟吗?

对于nokogiri,你可以试一试

对于其他gem,您可以解决ruby 1.9兼容性问题

,它似乎说明了一切:

不支持Ruby 1.9.0。您应该升级到1.9.1-p129甚至1.9.2。1.9.0太破碎,无法支撑:-(


我现在可能想更新这个ruby小东西…

你建议的nokogiri页面是关于在Mac OS环境中安装它的。我确实尝试过用源代码安装gem,但没有成功。我不确定问题是否与ruby 1.9兼容性有关,因为我可以在Windows工作站上安装它,但不能在Windows上安装Ubuntu服务器。不过,我对其他主张持开放态度。由于这篇博文,我从源代码安装了Ruby 1.9.1:现在它可以无缝工作了。