Ответ 1
Спасибо всем. Как я обновил до Lion, мне нужно было установить x-код 4.1, чтобы получить правильные файлы за кулисами, чтобы сборщик установил все правильные пакеты. Теперь все работает!
Я обновил релиз разработчика Lion и заметил, что больше не могу запускать приложения для rails. Всякий раз, когда я пытаюсь sudo bundle install
, я получаю следующую ошибку:
Installing nokogiri (1.4.4) with native extensions /Library/Ruby/Site/1.8/rubygems/installer.rb:551:in `build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h
Gem files will remain installed in /Users/jamielawrence/Documents/Websites/atgdb/vendor/bundle/ruby/1.8/gems/nokogiri-1.4.4 for inspection.
Results logged to /Users/jamielawrence/Documents/Websites/atgdb/vendor/bundle/ruby/1.8/gems/nokogiri-1.4.4/ext/nokogiri/gem_make.out
from /Library/Ruby/Site/1.8/rubygems/installer.rb:504:in `each'
from /Library/Ruby/Site/1.8/rubygems/installer.rb:504:in `build_extensions'
from /Library/Ruby/Site/1.8/rubygems/installer.rb:180:in `install'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/source.rb:101:in `install'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:78:in `preserve_paths'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/source.rb:91:in `install'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/installer.rb:58:in `run'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:93:in `with_build_args'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/installer.rb:57:in `run'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/spec_set.rb:12:in `each'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/spec_set.rb:12:in `each'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/installer.rb:49:in `run'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/installer.rb:8:in `install'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/cli.rb:222:in `install'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/vendor/thor/task.rb:22:in `send'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/vendor/thor/task.rb:22:in `run'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/vendor/thor.rb:246:in `dispatch'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/lib/bundler/vendor/thor/base.rb:389:in `start'
from /Library/Ruby/Gems/1.8/gems/bundler-1.0.15/bin/bundle:13
from /usr/bin/bundle:19:in `load'
from /usr/bin/bundle:19
Спасибо всем. Как я обновил до Lion, мне нужно было установить x-код 4.1, чтобы получить правильные файлы за кулисами, чтобы сборщик установил все правильные пакеты. Теперь все работает!
Попробуйте установить пакеты libxslt1-dev и libxml2-dev.
Установите драгоценный камень ruby1.8-dev (или, скорее, применимый драгоценный камень -dev), который будет содержать все файлы заголовков. Видеть: Этот вопрос
Я нашел, что это сработало через https://github.com/sparklemotion/nokogiri/issues/1166#issuecomment-56545974.
$ brew install libxml2
$ gem install nokogiri -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with-xml2-lib=/usr/lib/
Здесь более подробный подход, если даже это не работает. http://www.bullrico.com/2012/07/12/installing-nokogiri-after-updating-homebrew
В нем говорится: "не удается найти заголовочные файлы для ruby". Другими словами, вам не хватает заголовков ruby для компиляции libxml/nokogiri в качестве расширения ruby.
Рассмотрим установку ruby 1.9 (или 1.8) с использованием macports или rvm. Я не на 100% на втором, но первый автоматически сделает соответствующие заголовки доступными.
Рассмотрите возможность установки версии nokigiri (gem install nokogiri -v '1.5.9'
) до 1.6 версии
У меня была аналогичная проблема, и после установки XCode 4.1 мне также пришлось выполнить следующую команду:
sudo port upgrade libxml2 libxslt
После этого Нокогори построил без проблем.
Дополнительная информация: http://tektastic.com/2011/07/ruby-mac-ports-and-os-x-lion.html
Я попробовал несколько разных решений, но для меня, наконец, работал просто другой версии 1.9.2.
У меня была та же проблема с 1.9.2-p280, но когда я переключился на 1.9.2-p180, я смог установить без проблем. Не могу сказать, почему это сработало, но это произошло.
Я запускаю Lion и RVM (1.8.6).