Вопрос

Около месяца назад я установил libxml-ruby, используя Gem Install Libxml-Ruby, и это работало нормально.Затем сегодня я пошел установить его на другой компьютер, и это не удалось с этой ошибкой:

C:\Windows\system32>gem install -r libxml-ruby
Building native extensions.  This could take a while...
ERROR:  Error installing libxml-ruby:
        ERROR: Failed to build gem native extension.

c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.4/bin/rake RUBYARCHDIR=c:/ruby/lib/ruby/
gems/1.8/gems/libxml-ruby-1.1.3-x86-mswin32-60/lib RUBYLIBDIR=c:/ruby/lib/ruby/g
ems/1.8/gems/libxml-ruby-1.1.3-x86-mswin32-60/lib
'c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.4/bin/rake' is not recognized as an int
ernal or external command,
operable program or batch file.


Gem files will remain installed in c:/ruby/lib/ruby/gems/1.8/gems/libxml-ruby-1.
1.3-x86-mswin32-60 for inspection.
Results logged to c:/ruby/lib/ruby/gems/1.8/gems/libxml-ruby-1.1.3-x86-mswin32-6
0/ext/mingw/gem_make.out

У меня установлены rake и Win32-API.

Затем я запутался, действительно ли я ранее установил libxml-ruby на свой компьютер, и попытался удалить и переустановить его.Теперь на моей машине происходит сбой с тем же сообщением об ошибке, и некоторые сценарии, которые я написал для анализа xml, которые раньше работали, больше не работают.Кто-нибудь еще пытался установить libxml-ruby в последнее время на Windows XP?Кажется, он полностью сломан.

Это было полезно?

Решение

У меня возникла та же проблема, и в итоге я нашел достойный обходной путь.

Кажется ошибка верная

'c:/ruby/lib/ruby/gems/1.8/gems/rake-0.8.4/bin/rake'

не является допустимым исполняемым файлом.Ему необходимо запустить rake из корневой папки Ruby/bin, где находится пакетный файл оболочки.

Покопавшись в коде Rubygems, я обнаружил, что Gem::Ext::RakeBuilder пытается создавать расширения, используя

cmd = ENV['rake'] || Gem.bin_path('rake') rescue Gem.default_exec_format % 'rake'

Таким образом, простая установка переменной среды rake на что-то допустимое перед запуском установки драгоценного камня должно помочь:

C:\>set rake=c:\ruby-1.8.6-26\bin\rake.bat

C:\>gem install libxml-ruby --no-rdoc --no-ri
Building native extensions.  This could take a while...
Successfully installed libxml-ruby-1.1.3-x86-mswin32-60
1 gem installed

(Я пропустил установку rdoc и ri, потому что они выводят кучу предупреждений о форматировании, что затрудняет вставку результатов сюда.)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top