erro ao instalar ruby ??gem
Pergunta
Eu estou tentando instalar uma jóia de rubi. Estou recebendo este erro.
C:\>gem install racc
Building native extensions. This could take a while...
ERROR: Error installing racc:
ERROR: Failed to build gem native extension.
c:/ruby/bin/ruby.exe extconf.rb install racc
extconf.rb:3:in ``': No such file or directory - uname -p (Errno::ENOENT)
from extconf.rb:3
Gem files will remain installed in c:/ruby/lib/ruby/gems/1.8/gems/racc-1.4.6 for inspection.
Results logged to c:/ruby/lib/ruby/gems/1.8/gems/racc-1.4.6/ext/racc/cparse/gem_make.out
Eu tenho procurado este local, mas não encontrou nada sobre isso. Eu pesquisei muito, e encontrado somente que a atualização gemas de rubi deve resolver o problema, mas isso não aconteceu.
Eu tenho pedras preciosas rubi 1.2.0 e Ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32], Windows 2003.
Solução
A linha de ofender no arquivo extconf.rb
na gem RACC é esta:
ENV["ARCHFLAGS"] = "-arch #{`uname -p` =~ /powerpc/ ? 'ppc' : 'i386'}"
Desde que você não está usando um PowerPC (a menos que sua configuração é excepcionalmente incomum :)), você pode substituir esta linha com:
ENV["ARCHFLAGS"] = "-arch i386"
Eu não sei se ele irá compilar com sucesso agora, mas pelo menos você vai ser passado este erro.
Outras dicas
Isto pode não ser diretamente relacionados a este post, mas ele me ajudou e eu espero que pode ajudar outras pessoas que tiveram o "Falha ao extensão nativa construção jóia." erro ao instalar gemas no Windows.
Os caras lá no rubyinstaller.org fornecer uma DevKit ( http://rubyinstaller.org/download.html ) contendo GCC, fazer e Sh para uso durante a instalação Gems. Eu segui as instruções para a instalação ( http://wiki.github.com/oneclick/rubyinstaller / desenvolvimento-kit ) e voilá ... gemas que anteriormente não instalar agora instalar sem erros.
Eu testei instalar a gem RACC e não tinha problemas (embora eu não tenho nenhuma experiência anterior com esta jóia;. Talvez ele tenha sido fixado uma vez) Eu também testado com Rcov (que eu nunca fui capaz de começar a trabalhar corretamente) e conseguiram instalá-lo sem erros!
Espero que isso ajude alguém lá fora;)