libxml-ruby на Windows XP проблема
Около месяца назад я установил 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
У меня установлены грабли и win32-api
Затем я запутался, если я действительно установил libxml-ruby на мою машину ранее и попытался удалить и переустановить его. Теперь происходит сбой с тем же сообщением об ошибке на моем компьютере, и некоторые сценарии, которые я написал для анализа xml, которые раньше работали, больше не работают. Кто-нибудь еще пытался установить libxml-ruby в последнее время на Windows XP? Кажется, он полностью сломан.
1 ответ
У меня возникла та же проблема, и в итоге я нашел приличный обходной путь.
Кажется, ошибка верна
'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 на что-то допустимое перед запуском установки gem должна помочь:
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, потому что он выводит кучу предупреждений о форматировании, что затрудняет вставку результатов здесь.)