Nokogiri: libiconv está faltando

Criado em 3 abr. 2011  ·  109Comentários  ·  Fonte: sparklemotion/nokogiri

Estamos executando Ruby 1.8.7 (através de RVM) no OS X 10.6.6. Tentar instalar o nokogiri 1.4.4 usando o bundler resulta sempre no seguinte erro:

Installing nokogiri (1.4.4) with native extensions /Users/administrator/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/site_ruby/1.8/rubygems/installer.rb:533:in `build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)

/Users/administrator/.rvm/rubies/ruby-1.8.7-p302/bin/ruby extconf.rb 
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... no
checking for iconv_open() in -liconv... no
-----
libiconv is missing.  please visit http://nokogiri.org/tutorials/installing_nokogiri.html for help with installing dependencies.
-----
*** extconf.rb failed ***
[…]

Seguindo as instruções aqui no wiki, bem como na rede, usamos MacPorts para instalar libxml2 e libxslt , o que resulta na seguinte situação:

sudo port install libxml2 libxslt
Password:
Error: Cannot install libxml2 for the arch(s) 'x86_64' because
Error: its dependency libiconv is only installed for the archs 'i386 ppc'.
Error: Unable to execute port: architecture mismatch

Nós compilamos libxml2 e libxslt partir da fonte e tentamos instalar a gem com os sinalizadores para MacPorts e a compilação conforme descrito no wiki, bem como algumas variações encontradas online. — Os resultados continuam os mesmos. Até baixamos a gem, alteramos extconf.rb como sugerido aqui: https://github.com/tenderlove/nokogiri/issues#issue/381 e compilamos localmente, mas o resultado final é o mesmo.

O que estamos perdendo? Estamos praticamente presos a esta situação.

Todos 109 comentários

Fiz a mesma pergunta e recebi a seguinte resposta:

Instale o MacPorts: http://www.macports.org
Adicione /opt/local/bin ao seu PATH (bashrc ou zshrc ou o que você usar).
sudo port install libxml2 e sudo port install libxslt
Então sudo gem install nokogiri --no-rdoc --no-ri deve ser executado sem problemas. Isso é tudo que eu tinha que fazer para o sistema ruby ​​(1.8.7 no OSX 10.6) e 1.9.2 via rvm.

Eu estava tendo os mesmos problemas em 10.6. Reinstalei o MacPorts, instalei o libxml2 e o libxslt novamente e agora não estou mais enfrentando esses problemas.

Supondo que você instalou libxml2 e libxslt com MacPorts, você ainda pode estar recebendo esse erro devido a uma incompatibilidade da ordem de caminhos de inclusão e caminhos de link usados ​​pela chamada para have_func('iconv_open', 'iconv.h')

Solução simples (patch): exclua libiconv.* em /usr/local/lib

Sugestão: faça com que o extconf.rb execute uma verificação um pouco mais sofisticada de quais libs iconv estão realmente instaladas e dê ao usuário uma pista melhor. Neste caso, o libiconv NÃO está faltando. Na verdade, existem DOIS libiconvs, o cabeçalho correto estava sendo compilado e uma biblioteca antiga estava sendo vinculada. Parece um problema muito comum que a mensagem de erro do arquivo de instalação pode ajudar um pouco mais.

E acho que isso pode ser um problema com o mkmf e a maneira como ele lida com os caminhos da biblioteca? A verificação de compilação com falha para mim foi:

```"gcc -o conftest -I. -I/usr/local/lib/ruby/1.8/i686-darwin10.3.0 -I. -III/opt/local/include -III/usr/local/include -III /usr/local/include -III/usr/include -III/usr/include/libxml2 -I/opt/local/include/libxml2 -I/usr/local/include/libxml2 -I/usr/local/include/libxml2 -II/opt/local/include -II/usr/local/include -II/usr/local/include -II/usr/include -II/usr/include/libxml2 -I/opt/local/include -I/usr /local/include -I/usr/local/include -I/usr/include -I/usr/include/libxml2 -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_XOPEN_SOURCE=1 -fno-common -pipe -fno-common -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline conftest.c -L. -L/usr/local/lib -L/opt/local/lib -L/usr/local/lib -L /usr/lib -L. -lruby-static -lpthread -ldl -lobjc "
Símbolos indefinidos para arquitetura x86_64:
"_libiconv_open", referenciado em:

Note the compile stage starts with /opt/local/include, but the link stage starts with /usr/local/lib, which is where the old version was

Estou usando Lion e homebrew. Para mim, isso fez o truque:

brew install libiconv
brew link libiconv

No meu caso (Migração para OS X Lion), para corrigir o problema, limpei macports :

port -qv installed > myports.txt
sudo port -fp uninstall --follow-dependents installed
sudo port clean all

Mais detalhes: http://trac.macports.org/wiki/Migration

+1 ao que jfahrenkrug disse. O guia de instalação em http://nokogiri.org/tutorials/installing_nokogiri.html , seção homebrew provavelmente deve ser atualizado;

preparar instalar libxml2 libxslt
link de preparo libxml2 libxslt

para

preparar instalar libxml2 libxslt libiconv
link de preparo libxml2 libxslt libiconv

A correção do jfahrenkrug também funcionou para mim

+1 funciona para mim

Eu segui as instruções para construir libxml2 e libxslt do brew. Eu não posso construir nokogiri.

Recebo um erro quando tento 'brew install libiconv':

$ brew instalar libiconv
Erro: Nenhuma fórmula disponível para libiconv
A Apple distribui libiconv com OS X, você pode encontrá-lo em /usr/lib.
Alguns scripts de compilação não conseguem detectá-lo corretamente, verifique
fórmulas para soluções.

Estou em uma nova instalação do Snow Leopard. Eu prefiro não usar MacPorts.

Por favor ajude.

@jseigler Estou executando o brew 0.8.1 e posso instalar o libiconv sem problemas. Tente atualizar o brew?

Eu tive o mesmo problema que @jseigler. Estou executando o brew 0.9 no OS X 10.7.3.

Baixando libiconv e compilando manualmente funcionou.
http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz

Se você descobrir como instalar o Nokogiri contra as bibliotecas brew 0.9, por favor me avise - eu atualizarei a documentação de instalação. Enquanto isso, como usuário principalmente do Linux, temo não poder ajudar muito.

@tenderlove , alguma ideia? Você <3 macs. :) :) :)

Usando brew 0.9 no OSX 10.7.3 o seguinte funcionou:

preparar instalar libxml2 libxslt
link de preparo libxml2 libxslt

Instale o libiconv da fonte:
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
tar xvfz libiconv-1.13.1.tar.gz
cd libiconv-1.13.1
./configure --prefix=/usr/local/Cellar/libiconv/1.13.1
fazer
sudo make install

Em seguida, instale o nokogiri:
gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.7.8/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.7.8/ lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 --with-iconv-include=/usr/local/Cellar/libiconv/1.13.1/include --with-iconv-lib =/usr/local/Cellar/libiconv/1.13.1/lib

@brennenf

Bom trabalho. Isso fez isso comigo também.

Instruções postadas em nokogiri.org:

http://nokogiri.org/tutorials/installing_nokogiri.html#homebrew_09

Obrigado a todos.

@brennenf Obrigado por esta linha
gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.7.8/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.7.8/ lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 --with-iconv-include=/usr/local/Cellar/libiconv/1.13.1/include --with-iconv-lib =/usr/local/Cellar/libiconv/1.13.1/lib

@brennenf sua correção me dá um bom "nokogiri-1.5.2 instalado com sucesso", mas quando executo a instalação do pacote no meu aplicativo Rails, ele ainda falha: "Ocorreu um erro ao instalar o nokogiri (1.5.2) e o Bundler não pode continuar.
Certifique-se de que gem install nokogiri -v '1.5.2' tenha sucesso antes de agrupar." Observe que "gem install nokogiri -v '1.5.2" também falha. Alguém mais está passando por isso?

@ttringas - envie um e-mail para nokogiri-talk. este problema é em relação ao nokogiri 1.4.4 e está fechado há meses.

Olá, alguma atualização sobre o Mountain Lion?
Não consigo fazer a instalação.

Atualizei o caminho mencionado na página de instalação do nokogiri:

gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.8.0/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.8.0/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 --with-iconv-include=/usr/local/Cellar/libiconv/1.13.1/include --with-iconv-lib=/usr/local/Cellar/libiconv/1.13.1/lib

isso é o que eu tenho em troca: https://gist.github.com/3186643

@polarblau olha quem está com problemas agora :D (eu)

Pode ajudar, mas parece que o "ecossistema" do RVM parece problemático após a atualização para o leão da montanha. Eu removo o .rvm e instalo o rvm usando http://unfiniti.com/software/mac/jewelrybox/ e agora funciona, mas tenho um aviso que diz:
WARNING: Nokogiri was built against LibXML version 2.8.0, but has dynamically loaded 2.7.8

O mesmo aqui, reinstalar o ruby ​​fez o truque (não estou realmente surpreso - essa é uma armadilha bastante comum)

@polarblau , até tarde! já li isso ;)

Para fazer a instalação funcionar no meu Mountain Lion recém-atualizado, tive que remover meus pacotes rvm instalados anteriormente (localizados em $ rvm_path/usr), reconstruir o ruby ​​1.9.3 e, em seguida, instalar o gem nokogiri com sucesso. Veja https://rvm.io/packages/

Estou no Leão da Montanha. A reinstalação do Ruby funcionou para mim.

verificando libxml/parser.h... não

libxml2 está faltando.

Descobri que uma etapa extra era necessária para resolver o acima para o Homebrew 0.9 no Mac OS X 10.8 Mountain Lion e é criar um link "/usr/bin/gcc-4.2":

preparar instalar libxml2 libxslt
link de preparo libxml2 libxslt
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
tar xvfz libiconv-1.13.1.tar.gz
cd libiconv-1.13.1
./configure --prefix=/usr/local/Cellar/libiconv/1.13.1
fazer
sudo make install
sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.8.0/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.8.0/ lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 --with-iconv-include=/usr/local/Cellar/libiconv/1.13.1/include --with-iconv-lib =/usr/local/Cellar/libiconv/1.13.1/lib

brax4444 muito obrigado, você é um salva-vidas!! Funcionou perfeitamente com a adição de um sudo no seu último comando por causa do erro:

ERRO: Ao executar gem ... (Errno::EPERM)
Operação não permitida - ~/.rvm/gems/ruby-1.9.3-p194/gems/nokogiri-1.5.5/.autotest

brax4444 é o cara! obrigado

Gostaria de saber se alguém pode ajudar um noobie:

Running Mountain Lion 10.8.2 com Homebrew.

Começou com o nokogiri 1.5.2 - estava perdendo o libiconv típico.

Entre este tópico, especificamente Brax4444 e o tutorial de instalação no nokogiri: http://nokogiri.org/tutorials/installing_nokogiri.html para Homebrew .9, fiquei com o seguinte FUBAR:

Agora tenho o nokogiri 1.5.5, onde o Rails está procurando o 1.5.2

Ainda não foi possível corrigir o problema da libiconv, apesar de inúmeras horas.

Não é mais possível executar comandos do Rails devido à falta de gem > nokogiri: 1.5.2

Tente instalar a gem (que seria 1.5.5) ou rails new (estou tentando qualquer coisa neste momento... volte com o seguinte erro agora: ERROR: While running gem... (Errno::EPERM)
Operação não permitida - /usr/local/rvm/gems/ruby-1.9.3-p194/gems/nokogiri-1.5.5/.autotest

Alguém pode me salvar? Eu tenho que entregar um aplicativo até amanhã.

Olá!

Obrigado por fazer esta pergunta! Seu pedido de assistência usando o Nokogiri não ficará sem resposta!

No entanto, este problema está encerrado, e os problemas do Github do Nokogiri são reservados para relatar bugs ou enviar patches. Se você fizer sua pergunta na lista de discussão, o Team Nokogiri promete que alguém lhe dará uma resposta em tempo hábil.

Se você quiser ler sobre a justificativa do Team Nokogiri para esta política, acesse http://bit.ly/nokohelp.

Muito obrigado pela compreensão! E obrigado por usar o Nokogiri.

brax4444, muito obrigado, seus passos me ajudaram a resolver um problema semelhante ao instalar o pg gem.

As instruções na página http://nokogiri.org/tutorials/installing_nokogiri.html agora estão desatualizadas devido ao pacote de instalação de versões mais recentes (atualmente libxml2 em 2.9.0 e libxslt em 1.1.28).

@Winstons

Obrigado pelo seu comentário, mas este problema está encerrado há algum tempo.

Se você tiver uma atualização para os documentos de instalação do nokogiri, você pode enviar uma solicitação de pull para:

https://github.com/sparklemotion/nokogiri.org-tutorials

ou você pode indicar mais claramente o problema e as soluções (o empacotador não instala libxml2 ou libxslt ... você quer dizer brew? ou portas mac? ou ... ?) em um novo problema e nós o resolveremos quando pudermos confirmar independentemente.

Obrigado por usar o Nokogiri!

@flavorjones Desculpe! Eu vou bifurcar.

Obrigado pela coautoria de Nokogiri.

Eu também precisava instalar o XCode para que isso funcionasse.

Eu precisava instalar ferramentas de desenvolvedor de linha de comando.

@dentarg Obrigado, tive o mesmo problema, depois de restaurar meu Mac, as ferramentas de desenvolvedor de linha de comando não foram instaladas.
Faça isso com este comando 'xcode-select --install'

use https://github.com/Homebrew/homebrew-dupes/blob/master/libiconv.rb

brew tab homebrew/dupes
preparar instalar libiconv

e talvez isso:
configuração do pacote build.nokogiri --use-system-libraries

mas não sei se isso funciona

Obrigado @brax4444 , seu conselho funcionou para mim também!

Eu usei o iconv nativo. Você não precisa vincular libxml2/libxslt.

brew install libxml2 libxslt
gem install nokogiri -- \
    --with-xml2-lib=/usr/local/Cellar/libxml2/2.7.8/lib \
    --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 \
    --with-iconv-lib=/usr/lib \
    --with-iconv-include=/usr/local/include 

Obrigado @patricksereno.

configuração do pacote build.nokogiri --use-system-libraries
isso funcionou para mim

Obrigado, brax4444! Essa linha (link gcc) fez isso por mim também!

VEJA AS INSTRUÇÕES ATUALIZADAS: https://github.com/sparklemotion/nokogiri/issues/442#issuecomment -53793550

NOTA: se você está passando por todos esses posts um por um tentando de tudo, então VOCÊ ESTÁ FAZENDO ERRADO. Todos os conselhos para 'brew link' (incluindo aqueles post) são maus conselhos. Todos os conselhos para "--use-system-libraries" também são maus conselhos. STAAAAHHHHP. Pule para o final.

acredito que isso funcionou para mim:

brew tap homebrew/dupes
brew install libiconv
brew link libiconv --force
gem install nokogiri -v 1.6.3.1 -- --with-iconv-dir=/usr/local

O ponto importante aqui é que o libiconv precisa ser 'linkado' para /usr/local/include. Com o toque de 'dupes', ele vai reclamar sobre substituir uma biblioteca do sistema, então você precisa --force . Então você só precisa dizer ao nokogiri para pesquisar /usr/local para procurar o caminho do iconv para passar para o libxml2 incorporado quando ele for compilado. Ao usar --use-system-libraries o que as pessoas estão fazendo é ignorar a necessidade de encontrar essa biblioteca para passá-la para a compilação interna da libxml2.

Uma maneira de corrigir isso seria fazer o homebrew adicionar uma configuração pkg-config para libiconv, pois então o nokogiri extconf.rb será capaz de encontrá-lo.

Outra maneira seria codificar /usr/local/include como um caminho de pesquisa aqui:

https://github.com/sparklemotion/nokogiri/blob/983ff1f2962c7f9fd20a6fc4c18784eccfff21c0/ext/nokogiri/extconf.rb#L132 -L133

Eu tentei descobrir como extrair /usr/local/include de um caminho no mkmf do ruby ​​e foda-se se eu descobrir como fazer isso. As camadas de indireção em mkmf são muito profundas. O método find_header() no mkmf certamente pode encontrar o iconv.h, mas não sei como extrair as informações sobre em qual caminho ele o encontra. Essa seria realmente a correção correta para nokogiri para encontrar o arquivo de cabeçalho em da mesma forma que o mkmf pode encontrar o arquivo de cabeçalho.

Parece que o fato de que o nokogiri não pode encontrar um arquivo de cabeçalho simples em /usr/local/include sem a necessidade de um pkg-config externo está quebrado. Eu posso ver como hardcoding o caminho é feio, mas não sei como perguntar ao mkmf qual diretório find_header está encontrando o cabeçalho em ...

Também parece que há um bug aqui onde dir_config() pode retornar uma matriz de caminhos separados por ':' em vez de uma matriz de dois caminhos, mas não parece ter influência na correção desse problema:

https://github.com/sparklemotion/nokogiri/blob/983ff1f2962c7f9fd20a6fc4c18784eccfff21c0/ext/nokogiri/extconf.rb#L126 -L130

@lamont-granquist ótimas instruções, ainda melhor se você mudar de guia para toque :-)

@ericbrooke lol, eu copiei isso de um pôster anterior... corrigido agora...

Acho que tentei todos os comandos mencionados neste post e ainda encontrei isso:

sudo gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.8.0/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.8.0/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 --with-iconv-lib=/usr/lib --with-iconv-include=/usr/local/include/
Building native extensions with: '--with-xml2-include=/usr/local/Cellar/libxml2/2.8.0/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.8.0/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 --with-iconv-lib=/usr/lib --with-iconv-include=/usr/local/include/'
This could take a while...
Building nokogiri using packaged libraries.
ERROR:  Error installing nokogiri:
    ERROR: Failed to build gem native extension.

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb --with-xml2-include=/usr/local/Cellar/libxml2/2.8.0/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.8.0/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 --with-iconv-lib=/usr/lib --with-iconv-include=/usr/local/include/
Building nokogiri using packaged libraries.
checking for iconv.h... yes
checking for iconv_open() in iconv.h... no
checking for iconv_open() in -liconv... no
checking for libiconv_open() in iconv.h... no
checking for libiconv_open() in -liconv... no
checking for iconv.h... yes
checking for iconv_open() in iconv.h... no
checking for iconv_open() in -liconv... no
checking for libiconv_open() in iconv.h... no
checking for libiconv_open() in -liconv... no
-----
libiconv is missing.  please visit http://nokogiri.org/tutorials/installing_nokogiri.html for help with installing dependencies.

Não tenho ideia de por que iconv.h foi descoberto, mas iconv_open() não (está definido nesse arquivo). Eu vi que alguém encontrou exatamente o mesmo problema recentemente - http://stackoverflow.com/questions/24735534/nokogiri-install-fails-iconv-doesnt-work-osx

Alguém já viu este problema?

VEJA AS INSTRUÇÕES ATUALIZADAS: https://github.com/sparklemotion/nokogiri/issues/442#issuecomment -53793550

@Reinmar você pode tentar o que eu sugeri. Em particular:

  1. brew link libiconv --force e depois valide se ls -la /usr/local/include/iconv.h está presente
  2. também validar ls -la /usr/local/lib/libiconv.dylib existe
  3. então simplesmente: gem install nokogiri -- --with-iconv-dir=/usr/local

Todos os caminhos que você está usando para diretórios versionados dentro do 'Cellar' do homebrew são meio horríveis e frágeis e não estou muito surpreso que não esteja funcionando corretamente.

Eu usei estas instruções http://nokogiri.org/tutorials/installing_nokogiri.html para que os caminhos sejam semelhantes (as versões diferem).

piotrus<strong i="7">@macus</strong> ~> brew link libiconv --force
Warning: Already linked: /usr/local/Cellar/libiconv/1.14
To relink: brew unlink libiconv && brew link libiconv
piotrus<strong i="8">@macus</strong> ~> ls -la /usr/local/include/iconv.h
lrwxr-xr-x  1 piotrus  admin  39 Jul 29 19:47 /usr/local/include/iconv.h -> ../Cellar/libiconv/1.14/include/iconv.h
piotrus<strong i="9">@macus</strong> ~> ls -la /usr/local/lib/libiconv.dylib
lrwxr-xr-x  1 piotrus  admin  42 Jul 29 19:47 /usr/local/lib/libiconv.dylib -> ../Cellar/libiconv/1.14/lib/libiconv.dylib
piotrus<strong i="10">@macus</strong> ~> gem install nokogiri -- --with-iconv-dir=/usr/local
ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
piotrus<strong i="11">@macus</strong> ~> sudo gem install nokogiri -- --with-iconv-dir=/usr/local
Password:
Building native extensions with: '--with-iconv-dir=/usr/local'
This could take a while...
Building nokogiri using packaged libraries.
ERROR:  Error installing nokogiri:
    ERROR: Failed to build gem native extension.

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb --with-iconv-dir=/usr/local
Building nokogiri using packaged libraries.
checking for iconv.h... yes
checking for iconv_open() in iconv.h... no
checking for iconv_open() in -liconv... no
checking for libiconv_open() in iconv.h... no
checking for libiconv_open() in -liconv... no

Talvez eu tente atualizar Ruby/gem... :| É um palpite cego embora.

Ok... Atualizar gem não ajudou. Então, depois de instalar o rvm (mas antes de atualizar o Ruby de 2.0.0 para 2.1.*), decidi reiniciar o terminal e erroneamente troquei de iterm para o terminal padrão e... instalando nokogiri funcionou com o mesmo comando que não funcionou antes. Então, ou eu tive que reiniciar o terminal (embora eu estivesse usando muitas guias no item anteriormente) ou foi algum problema causado pelo xterm. Não faço ideia, mas talvez ajude alguém.

além da resposta @lamont-granquist, você pode pular a instalação do gem se estiver usando o pacote e executar:

bundle config build.nokogiri --use-system-libraries
bundle install

Depois de seguir as instruções de @lamont-granquist:

brew tap homebrew/dupes
brew install libiconv
brew link libiconv --force
gem install nokogiri -v 1.6.3.1 -- --with-iconv-dir=/usr/local

E correndo para o mesmo problema que @Reinmar , encontrei uma sugestão no StackOverflow e combinei com as outras sugestões por aqui, resultando em:

NOKOGIRI_USE_SYSTEM_LIBRARIES=1 sudo gem install nokogiri -- --use-system-libraries --with-iconv-dir="$(brew --prefix libiconv)" --with-xml2-include=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml2

Isso finalmente funcionou para mim, espero que ajude você @Reinmar . Por que funciona está além de mim, _[comentários contidos sobre o ecossistema fechado da Apple aqui]_. Obrigado a todos por compartilhar seus métodos.

Eu tive que arrancar o home-brew e todos os brews o reinstalaram do zero e então funcionou

@doublerebel acho que você pode precisar reinstalar o xcode e/ou usar xcode-select. o que você fez é todo tipo de confuso de qualquer maneira ...

Parece que com a versão atual do homebrew, consegui me contentar com uma versão ligeiramente simplificada do que @lamont-granquist criou:

brew tap homebrew/dupes
brew install libiconv
gem install nokogiri -v 1.6.3.1 -- --with-iconv-dir=/usr/local/opt/libiconv

Não brew link --force libiconv ...

isso faz sentido @jacobvosmaer , os documentos provavelmente devem ser atualizados para usar isso.

(provavelmente solte o -v 1.6.3.1, embora)

eu atualizaria os documentos, mas estou distraído agora com outros códigos ...

Depois de um dia inteiro trabalhando nesse problema, vale a pena mencionar que a solução @doublerebel acima é a primeira coisa a funcionar

VEJA AS INSTRUÇÕES ATUALIZADAS: https://github.com/sparklemotion/nokogiri/issues/442#issuecomment -53793550

isso pode ajudar para usuários com o Xcode 5.1.1:

 sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

VEJA AS INSTRUÇÕES ATUALIZADAS: https://github.com/sparklemotion/nokogiri/issues/442#issuecomment -53793550

Além disso, sugiro garantir que o Xcode 5.1.1 esteja instalado (e/ou reinstalá-lo) e reinstalar as "Ferramentas de linha de comando para Xcode" aqui: https://developer.apple.com/downloads/

Então faça:

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
brew tap homebrew/dupes
brew uninstall libiconv
brew install libiconv
gem install nokogiri -- --with-iconv-dir=/usr/local/opt/libiconv

As atualizações e restaurações do Mac OSX parecem destruir o Xcode e o homebrew por algum motivo. Eu também gosto de apontar para /usr/local/opt/libiconv melhor do que forçar a vinculação em /usr/local/include.

@lamont-granquist Obrigado por suas soluções. Eu apliquei cada um e o seu é o que finalmente funciona para mim.

Executando 'brew uninstall libxml2 libxslt' e depois 'sudo gem install nokogiri' corrigiu para mim

Usando o RVM e criando um novo conjunto de gems, tive que fazer o seguinte:

brew uninstall libiconv
brew install libiconv
gem install nokogiri -- --with-iconv-dir=/usr/local/opt/libiconv

@lamont-granquist Muito obrigado pela correção. Trabalhou para mim.

@lamont-granquist @ericbrooke obrigado. isso matou.

EDIT: INSTRUÇÕES AINDA MAIS SIMPLES: https://github.com/sparklemotion/nokogiri/issues/442#issuecomment -54091434

Então, mesclando os bons bits da pergunta stackoverflow nesta resposta:

Execute isto para instalar as ferramentas de linha de comando Xcode e Xcode mais recentes (selecione 'Obter Xcode' na caixa de diálogo):

sudo xcode-select --install

Em seguida, atualize o libiconv no homebrew:

brew tap homebrew/dupes
brew update
brew uninstall libiconv
brew install libiconv

A instalação do nokogiri:

gem install nokogiri -- --with-iconv-dir=/usr/local/opt/libiconv

Isso deve funcionar para todos no 10.9 + homebrew

adoraria algum feedback sobre ^^^ que

funcionou para mim, obrigado!

-Chris

Na quinta-feira, 28 de agosto de 2014 às 16h40, lamont-granquist [email protected]
escrevi:

adoraria algum feedback sobre ^^^ que


Responda a este e-mail diretamente ou visualize-o no GitHub
https://github.com/sparklemotion/nokogiri/issues/442#issuecomment -53794057
.

Por curiosidade, para que serve brew uninstall libiconv ? Isso implica que você já tem um libiconv instalado de alguma forma?

@knu sim, isso implica que você está usando o Mac OsX e instalou o libiconv via Homebrew e não MacPorts. Ambos são gerenciadores de pacotes. Se você não tiver certeza se o brew está instalado, digite brew no terminal, se você receber esta resposta:

Example usage:
  brew [info | home | options ] [FORMULA...]
  brew install FORMULA...
  brew uninstall FORMULA...
  brew search [foo]
  brew list [FORMULA...]
  brew update
  brew upgrade [FORMULA...]
  brew pin/unpin [FORMULA...]

Troubleshooting:
  brew doctor
  brew install -vd FORMULA
  brew [--env | config]

Brewing:
  brew create [URL [--no-fetch]]
  brew edit [FORMULA...]
  open https://github.com/Homebrew/homebrew/wiki/Formula-Cookbook

Further help:
  man brew
  brew home

você sabe que o homebrew está instalado.

brew list

irámostrar todos os pacotes que instalou incluindo o libiconv

@ericbrooke Quer dizer, eu não via sentido em fazer brew uninstall libiconv logo após brew tap homebrew/dupes quando libiconv só seria encontrado depois de tocar em dupes porque não está no repositório padrão. Está lá apenas no caso, como quando a instalação do seu homebrew está de alguma forma quebrada?

Além disso, como você sabe pela presença de libiconv em "dupes", o iconv faz parte do OS X + Xcode que você não precisa adicionar via brew.

Eu não uso o Homebrew, mas o Homebrew não deve tocar em nada em /usr/{include,lib}, certo? Ou reinstalar o libiconv via brew é uma tentativa de recuperar aqueles que foram quebrados?

Em um MacBook Pro novo com Vanilla Mountain Lion + Xcode + Command Line Tools instalado, vejo /usr/include/iconv.h e /usr/lib/libconv.so lá, então fiquei me perguntando qual a causa da falta desses arquivos podem ser.

@lamont-granquist obrigado.

Fiz o que você listou. Eu me deparei com um problema de permissão em:
Você não tem permissões de gravação para o diretório /Library/Ruby/Gems/2.0.0.

Aparentemente eu preciso consertar meu rvm e depois de seguir o passo ele foi instalado e continuo no meu processo de instalação do pacote.
rvm instalar 2.1.2
rvm usar 2.1.2
atualização de gemas --system

@knu sim, toda vez que eu atualizo o sistema operacional ou restauro da máquina do tempo, parece que o homebrew é um lixo e eu tenho que reinstalar tudo. essas instruções são tão pessimistas quanto possível. se alguém tiver uma instalação limpa e sã do xcode e o libiconv estiver instalado corretamente no homebrew, o último comando de instalação do gem é tudo o que deve ser necessário.

Então, acontece que /usr/local/include/iconv.h #define iconv_open para libiconv_open e por algum motivo o clang pega o arquivo de cabeçalho homebrew em /usr/local/include sobre /usr/include e então tenta vincular contra /usr/lib/libiconv.dylib. O truque é remover o arquivo de cabeçalho iconv.h criado pela libiconv.

TL;DR: instruções anteriores sobre como 'consertar' esse problema (incluindo o meu) pioram tudo.

Portanto, as instruções atualizadas sobre como reparar a instalação do seu mac:

Certifique-se de que o Xcode e os utilitários de linha de comando estejam instalados corretamente. Isso corrige problemas em que eu não tinha arquivo de cabeçalho /usr/include/iconv.h. Selecione 'Obter Xcode' na caixa de diálogo:

sudo xcode-select --install

Você pode querer atualizar o homebrew e o libiconv caso esteja desatualizado (e caso seu libiconv no homebrew tenha sido instalado há muito, muito tempo). Isso provavelmente é totalmente opcional, pois não estaremos vinculando o homebrew libiconv agora:

brew update
brew tap homebrew/dupes
brew uninstall libiconv
brew install libiconv

Não vincule o libiconv, para que ele não substitua o libiconv do sistema (se isso lhe der 'no such keg', tudo bem, qualquer outro erro e você provavelmente deseja voltar e atualizar o homebrew e o libiconv):

brew unlink libiconv

Construir nokogiri:

gem install nokogiri

@lamont-granquist Muito obrigado!!

@lamont-granquist Não sei por que, mas em seu último comentário, gem install nokogiri não funcionou para mim.
Em vez disso, depois de seguir todas as etapas como:

brew update
brew tap homebrew/dupes
brew uninstall libiconv
brew install libiconv
brew unlink libiconv

gem install nokogiri -- --with-iconv-dir=/usr/local/opt/libiconv funcionou para mim.

Estou em 10.9, com rvm, se isso ajuda.

@lamont-granquist Obrigado pela ótima investigação! Acho que vou tentar reproduzir o problema e elaborar uma "correção" para isso.

@SeanWangDev em algum lugar você tem outro iconv.h que está sendo pego primeiro e usado. Pode ser o MacPorts em vez do Homebrew.

Sim, eu acredito que sim. Há um em

/usr/local/Cellar/libiconv/1.14/include/iconv.h

outro em

/usr/include/iconv.h

A última é uma versão anterior.
Obrigado @lamont-granquist

/usr/include/iconv.h está bem, isso faz parte do Xcode, o primeiro é o homebrew que está escondido no 'Cellar', que também está bem. Se não houver nada em /opt/local/include ou qualquer outra coisa, então meu palpite seria que /usr/lib/libiconv.dylib está danificado de alguma forma?

@lamont-granquist Isso está um pouco fora do meu alcance agora. Como podemos saber que libiconv.dylib está danificado?
Quando eu faço ls -al /usr/lib/libiconv* , o resultado é esse

xxxx  1 xxx  xxx       16 10  5  2013 /usr/lib/libiconv.2.4.0.dylib -> libiconv.2.dylib
xxxx  1 xxx  xxx  2088992 10  5  2013 /usr/lib/libiconv.2.dylib
xxxx  1 xxx  xxx       20 10  5  2013 /usr/lib/libiconv.dylib -> libiconv.2.4.0.dylib

Sim, isso parece bom, este é o meu:

% ls -al /usr/lib/libiconv*
lrwxr-xr-x  1 root  wheel       16 Feb 26  2014 /usr/lib/libiconv.2.4.0.dylib@ -> libiconv.2.dylib
-r-xr-xr-x  1 root  wheel  2088992 Feb 26  2014 /usr/lib/libiconv.2.dylib*
lrwxr-xr-x  1 root  wheel       20 Feb 26  2014 /usr/lib/libiconv.dylib@ -> libiconv.2.4.0.dylib

Que tal /opt/local/lib/libiconv.dylib ou /opt/local/include/iconv.h ? Qualquer um desses pode causar problemas.

@lamont-granquist
Não, eu não tenho o diretório /opt/. São estes o que estamos procurando?

-r--r--r--+ 1 User  admin  1052128  9  4 11:30 /usr/local/Cellar/libiconv/1.14/lib/libiconv.2.dylib
-rw-r--r--+ 1 User  admin  1658  9  4 11:22 /usr/local/Library/Taps/homebrew/homebrew-dupes/libiconv.rb
-r-xr-xr-x  1 root  wheel  2088992 10  5  2013 /usr/lib/libiconv.2.dylib

Os arquivos iconv.h são apenas estes dois:

/usr/local/Cellar/libiconv/1.14/include/iconv.h
/usr/include/iconv.h

Não, isso é tudo legal. Tanto quanto posso ver, você deve ser capaz de 'instalar gem nokogiri' sem outros argumentos ....

Só queria acrescentar que gem install nokogiri -v 1.6.3.1 -- --with-iconv-dir=/usr/local funcionou bem para mim. Ao usar o bundler eu tive que fazer bundle config build.nokogiril --with-iconv-dir=/usr/local

@lamont-granquist Sim, gem install nokogiri funciona bem agora. Mas esta condição é diferente. Desta vez o nokogiri já foi instalado anteriormente por 'gem install nokogiri -- --with-iconv-dir=/usr/local/opt/libiconv'. Anteriormente, quando eu não tinha o nokogiri instalado, 'gem install nokogiri' não funcionava.
É possível que a execução de 'gem install nokogiri -- --with-iconv-dir=/usr/local/opt/libiconv' tenha alterado alguns arquivos ou adicionado alguns arquivos como libiconv.dylib ou iconv.h ?

@SeanWangDev :+1:

OS X 10.9.4 Mavericks.
Pessoal por favor me ajudem. Eu tentei de todas as maneiras que estão acima. Nenhum deles está trabalhando para mim. Eu empilhei no gem install nokogiri com/sem argumentos, ainda estou recebendo erro:

$ gem instalar nokogiri
Construindo extensões nativas. Isso vai demorar um pouco...
Construindo nokogiri usando bibliotecas empacotadas.
ERRO: Erro ao instalar nokogiri:
ERRO: Falha ao construir a extensão nativa da gem.

/usr/local/rvm/rubies/ruby-2.0.0-p353/bin/ruby extconf.rb

Construindo nokogiri usando bibliotecas empacotadas.
verificando iconv.h... * extconf.rb falhou *
Não foi possível criar o Makefile por algum motivo, provavelmente falta do necessário
bibliotecas e/ou cabeçalhos. Verifique o arquivo mkmf.log para obter mais detalhes. Você pode
precisa de opções de configuração.

Opções de configuração fornecidas:
--with-opt-dir
--sem-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--com-fazer-prog
--sem-fazer-prog
--srcdir=.
--curdir
--ruby=/usr/local/rvm/rubies/ruby-2.0.0-p353/bin/ruby
--ajuda
--limpar
--use-system-libraries
--enable-static
--disable-static
--with-zlib-dir
--sem-zlib-dir
--with-zlib-include
--without-zlib-include=${zlib-dir}/include
--with-zlib-lib
--without-zlib-lib=${zlib-dir}/lib
--enable-cross-build
--disable-cross-build
/usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:434:in try_do': The compiler failed to generate an executable file. (RuntimeError) You have to install development tools first. from /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:565:in try_cpp'
de /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:1044:no bloco block in have_header' from /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:895:in em check_for'
de /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:340:in block (2 levels) in postpone' from /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:310:in open'
de /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:340:in block in postpone' from /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:310:in open'
de /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:336:in postpone' from /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:894:in check_for'
de /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/mkmf.rb:1043:in have_header' from extconf.rb:103:in have_iconv?'
de extconf.rb:148:em block (2 levels) in iconv_prefix' from extconf.rb:90:in preserve_globals'
de extconf.rb:143:em block in iconv_prefix' from extconf.rb:120:in each_iconv_idir'
de extconf.rb:137:in iconv_prefix' from extconf.rb:428:in bloquear em

'
de extconf.rb:161:em block in process_recipe' from extconf.rb:154:in toque'
de extconf.rb:154:em process_recipe' from extconf.rb:423:in
'

Os arquivos Gem permanecerão instalados em /usr/local/rvm/gems/ruby-2.0.0-p353/gems/nokogiri-1.6.3.1 para inspeção.
Resultados registrados em /usr/local/rvm/gems/ruby-2.0.0-p353/gems/nokogiri-1.6.3.1/ext/nokogiri/gem_make.out

valide se você tem esses arquivos:

% ls -la /usr/include/iconv.h
-rw-r--r--  1 root  wheel  7981 Jul 29 15:32 /usr/include/iconv.h
% ls -la /usr/lib/libiconv.*
lrwxr-xr-x  1 root  wheel       16 Feb 26  2014 /usr/lib/libiconv.2.4.0.dylib@ -> libiconv.2.dylib
-r-xr-xr-x  1 root  wheel  2088992 Feb 26  2014 /usr/lib/libiconv.2.dylib*
lrwxr-xr-x  1 root  wheel       20 Feb 26  2014 /usr/lib/libiconv.dylib@ -> libiconv.2.4.0.dylib

se você não fizer isso, use sudo xcode-select --install e/ou vá para o site de download do desenvolvedor da apple e desinstale e reinstale manualmente o xcode e os utilitários de linha de comando xcode até que esses arquivos sejam instalados.

então se você usa homebrew, atualize seu homebrew e unlink o libiconv

brew update
brew tap homebrew/dupes
brew uninstall libiconv
brew unlink libiconv
brew install libiconv

valide que você não tem /usr/local/include/iconv.h:

% ls -la /usr/local/include/iconv.h
ls: /usr/local/include/iconv.h: No such file or directory

também valide que você não tem /opt/local/include/iconv.h

% ls -la  /opt/local/include/iconv.h
ls: /opt/local/include/iconv.h: No such file or directory

se você tiver esse arquivo, então você tem o iconv instalado do macports, idealmente você se livraria dele.

Então tente:

gem install nokogiri
gem install nokogiri -- --with-iconv-dir=/usr
gem install nokogiri -- --with-iconv-dir=/usr/local/opt/libiconv
gem install nokogiri -- --with-iconv-dir=/opt/local

(pare quando encontrar o que funciona)

se todo o resto falhar:

brew link --force libiconv
gem install nokogiri -- --with-iconv-dir=/usr/local

algo lá deve funcionar.

@lamont-granquist: +1:

@lamont-granquist Obrigado por sua instrução, estou entendendo o que está acontecendo e comecei a trabalhar em uma correção. No entanto, ainda não consigo reproduzir o problema em nenhum dos meus Macs, portanto, não há como confirmar se uma correção funciona. Você pode fornecer as etapas para reprodução?

Bem, eu tenho esse MBP há 3 anos e depois de 2 atualizações de SO e pelo menos 3 restaurações de TM, meu /usr/include/iconv.h desapareceu de alguma forma. Então nuke'ing esse arquivo pode causar o problema. A solução é reinstalar o xcode e as ferramentas de linha de comando corretamente.

Além disso, ao depurar isso, as pessoas sugerem fazer é 'brew link libiconv --force' para que ele seja instalado em /usr/local/include/iconv.h -- mesmo que haja avisos enormes quando você faz 'brew install libiconv ' e 'brew link libiconv' que isso é uma má ideia. O problema é que você pode pegar aquele iconv.h enquanto pega o sistema /usr/lib/libiconv.dylib e isso tem um conflito imediato sobre iconv_open() vs libiconv_open() e falha ao compilar porque eles são diferentes versões.

Não tenho certeza se há algo para corrigir nesses casos. O problema é realmente desfigurar seu sistema operacional e precisar recuperá-lo para uma forma mais pura.

Há uma coisa que eu não entendo e é por isso que o sistema de compilação do nokogiri encontrará arquivos /opt/local/include/iconv.h instalados por MacPorts. Eu não uso MacPorts, então não depurei isso, mas está causando problemas semelhantes a quando o homebrew tem o iconv.h vinculado diretamente ao /usr/local/include. Se o nokogiri pudesse parar de fazer isso, ajudaria as pessoas que têm o libiconv instalado no MacPorts.

$ ls -la /usr/include/iconv.h

-rw-r--r-- 1 roda raiz 7981 11 de setembro 11:32 /usr/include/iconv.h

ls -la /usr/lib/libiconv.*
lrwxr-xr-x 1 root wheel 16 set 11 01:03 /usr/lib/libiconv.2.4.0.dylib -> libiconv.2.dylib
-r-xr-xr-x 1 roda raiz 2088992 11 de setembro 01:02 /usr/lib/libiconv.2.dylib
lrwxr-xr-x 1 root wheel 20 Set 11 01:03 /usr/lib/libiconv.dylib -> libiconv.2.4.0.dylib

atualização de cerveja
Homebrew atualizado de 45e07c0e para e0dee399.
==> Fórmulas Atualizadas
android-ndk go lockrun pazpar2
apache-spark h2 mpd pktanon
gearman juju-quickstart ossp-uuid

$ brew tap homebrew/dupes
Aviso: Já tocou!

$ brew desinstalar libiconv

Desinstalando /usr/local/Cellar/libiconv/1.13.1...

Erro: Permissão negada - /usr/local/Cellar/libiconv/1.13.1/bin/iconv

está me dando erro de permissão nessa etapa

você precisa corrigir todas as suas permissões em /usr/local

seja qual for o seu login, você precisa corrigir as permissões para que o root não possua arquivos homebrew em /usr/local:

meu nome de usuário é 'lamont' que posso encontrar com o comando id :

% id -nu
lamont

para corrigir perms, eu faria:

% sudo chown -R lamont /usr/local

você quer ser muito cuidadoso com esse comando, no entanto, e verifique se você digitou tudo corretamente e obteve o nome de usuário correto.

@lamont-granquist O pacote libiconv do Homebrew não instala /usr/local/lib/libiconv.dylib enquanto coloca /usr/local/include/iconv.h? O que eu não entendo é se /usr/local/include/iconv.h é escolhido por que /usr/local/lib/libiconv.dylib não é ao vincular. Normalmente quando -I/usr/local/include está em CPPFLAGS -L/usr/local/lib deve estar em LDFLAGS.

Quanto à quebra ambiental, Nokogiri poderia pelo menos sugerir (re)instalar as Ferramentas de Linha de Comando quando /usr/include/iconv.h estiver faltando no OS X.

preparar desvincular libiconv
Erro: Não existe tal barril: /usr/local/Cellar/libiconv

Ignorei a mensagem e segui os próximos passos. Sem sucesso

@knu sim, eu olhei para isso e acho que me perdi no labirinto sinuoso de mkmf.rb.

@Ilovebarca rm -f /usr/local/include/iconv.h pode ajudar

@lamont-granquist
não ajudou. BTW muito obrigado por tentar me ajudar.
Isso é loucura, sou novo no mac e estou começando a odiar :))

Vou fazer algumas alterações no processo de detecção de iconv e adicionar uma verificação para /usr/include/iconv.h ausente no OS X ao extconf.rb. Aqui está um trabalho em andamento, e os testadores são bem-vindos!

Estou passando por problemas no github, troca de pilha, google etc e a única coisa que funcionou até agora foi a sugestão do @lamont-granquist . Configuração usando:

OSX 10.9.5
rbenv

Eu entendo que muitas pessoas de alguma forma quebram seu ambiente OS X e nem percebem isso. Um problema é a falta das Ferramentas de Linha de Comando do Xcode e o outro é o Homebrew. A próxima versão do nokogiri tentará detectar tal quebra antes de entrar na compilação e avisar o usuário sobre isso.

Obrigado por seu apoio!

Obrigado @lamont-granquist, estou lutando com esse problema há uma semana e finalmente sua solução de reinstalar o libiconv funciona ... isso é um alívio !!!

@jomz funciona no osx 10.10. obrigado :+1:

De uma nova instalação de 10.10 apenas hoje:

xcode-select --install
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew doctor
brew install ruby
source /etc/profile
gem install nokogiri

Este ruby ​​instalado versão 2.1.5p273 e nokogiri 1.6.4.1. Presumivelmente, você pode forçar a instalação dessas versões via homebrew e rubygems.

De uma instalação 10.10 atualizada de 10.9 com homebrew e ruby ​​já instalados:

brew install libxml2 libxslt
gem install nokogiri -- --use-system-libraries

Não tenho certeza se era necessário re/instalar libxml2 e/ou libxslt, mas isso funcionou para mim.

Acredito que capturamos isso no tutorial de instalação atualizado aqui:

http://www.nokogiri.org/tutorials/installing_nokogiri.html

Se não, por favor me avise e eu vou reabrir.

Obrigado pelo link do tutorial! Funcionou para mim quando especifiquei os caminhos de arquivo, conforme descrito em "Usando instalações libxml2 / libxslt não padrão". (Parece que /usr/bin no OS X 10.6.8 é considerado um local não padrão para bibliotecas do sistema.)

Para encontrar os caminhos dos arquivos, usei os comandos do Terminal which xml2-config e which xslt-config . Talvez atualize o tutorial para sugerir fazer isso?

Esta página foi útil?
0 / 5 - 0 avaliações