usage parse method ruby-on-rails ruby gem nokogiri

ruby-on-rails - parse - nokogiri windows



Instalando nokogiri-No se pudo construir la extensión nativa de la gema (3)

Al instalar Nokogiri en Ubuntu 12, recibí un error:

Installing nokogiri (1.4.4) with native extensions Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /usr/bin/ruby1.9.1 extconf.rb extconf.rb:10: Use RbConfig instead of obsolete and deprecated Config. checking for libxml/parser.h... yes checking for libxslt/xslt.h... yes checking for libexslt/exslt.h... yes checking for iconv_open() in iconv.h... yes checking for xmlParseDoc() in -lxml2... yes checking for xsltParseStylesheetDoc() in -lxslt... yes checking for exsltFuncRegister() in -lexslt... yes checking for xmlFirstElementChild()... yes checking for xmlRelaxNGSetParserStructuredErrors()... yes checking for xmlRelaxNGSetParserStructuredErrors()... yes checking for xmlRelaxNGSetValidStructuredErrors()... yes checking for xmlSchemaSetValidStructuredErrors()... yes checking for xmlSchemaSetParserStructuredErrors()... yes creating Makefile make compiling html_sax_parser_context.c compiling xml_io.c compiling xml_entity_reference.c compiling xml_schema.c compiling xml_element_content.c compiling xml_reader.c compiling xml_sax_push_parser.c compiling xml_sax_parser.c compiling xslt_stylesheet.c compiling xml_element_decl.c compiling xml_node.c compiling xml_cdata.c compiling xml_processing_instruction.c compiling xml_entity_decl.c compiling xml_attribute_decl.c compiling xml_xpath_context.c xml_xpath_context.c: In function ‘xpath_generic_exception_handler’: xml_xpath_context.c:184:3: error: format not a string literal and no format arguments [-Werror=format-security] cc1: some warnings being treated as errors make: *** [xml_xpath_context.o] Error 1 Gem files will remain installed in /home/alex/.bundler/tmp/22194/gems/nokogiri-1.4.4 for inspection. Results logged to /home/alex/.bundler/tmp/22194/gems/nokogiri-1.4.4/ext/nokogiri/gem_make.out An error occurred while installing nokogiri (1.4.4), and Bundler cannot continue. Make sure that `gem install nokogiri -v ''1.4.4''` succeeds before bundling.

Ya instalé libxslt-dev y libxml2-dev, pero como ve, no ayudó.

¿Cómo lo soluciono?


¿Hay alguna razón específica por la que necesita 1.4.4 en lugar de la última versión 1.5.6? De lo contrario, sugiero actualizar.

El registro de cambios de Nokogiri muestra que arreglaron esto en 1.5.4:

Cree soporte en sistemas Debian reforzados que usan -Werror=format-security . # 680.


@Confusion tiene la idea correcta.

Bundler probablemente esté bloqueado en nokogiri-1.4.4 en Gemfile y / o Gemfile.lock. La respuesta de @Confusion de ejecutar la actualización del paquete debería permitirle a su entorno Ruby Bundler usar el nokogiri-1.5.6 instalado correctamente.


Me tropecé con esto tratando de instalar bigbluebutton en ubuntu 13.04

Lo resolví haciendo este truco para compilar revertir la bandera de gcc de formato de seguridad en todo el sistema

Ten cuidado al hacer la primera rm . ¡Puede romper todo tu sistema!

rm /usr/bin/gcc nano /usr/bin/gcc ## contents of /usr/bin/gcc #!/bin/sh gcc-4.7 $* -Wno-format-security ## save and exit chmod u+x /usr/bin/gcc gem install nokogiri -v ''1.4.4''