Хорошо, я только что провел 4 часа, пытаясь выяснить это без успеха. Я попробовал всех обычных подозреваемых и погуглил все комбинации ruby 1.9.1, пути загрузки, гемов, mac os x, freebsd, prawn и других вещей. Суть в следующем:
Когда я компилирую ruby1.9.1-p129 из исходников на Mac OS X 10.5, путь загрузки по умолчанию ($ :), который я получаю:
ruby -e "puts $:"
/usr/local/lib/ruby/gems
/usr/local/lib/ruby/site_ruby/1.9.1
/usr/local/lib/ruby/site_ruby/1.9.1/i386-darwin9.7.0
/usr/local/lib/ruby/site_ruby
/usr/local/lib/ruby/vendor_ruby/1.9.1
/usr/local/lib/ruby/vendor_ruby/1.9.1/i386-darwin9.7.0
/usr/local/lib/ruby/vendor_ruby
/usr/local/lib/ruby/1.9.1
/usr/local/lib/ruby/1.9.1/i386-darwin9.7.0
.
например, когда я устанавливаю камень креветок, я получаю:
gem which prawn
(checking gem prawn-0.5.0.1 for prawn)
/prawn.rb
и когда я пытаюсь потребовать это, я получаю:
ruby -e "require 'prawn'"
-e:1:in `require': no such file to load -- prawn (LoadError)
from -e:1:in `'
Единственный способ решить эту проблему - сделать что-то глупое, как это:
$: << "/usr/local/lib/ruby/gems/1.9.1/gems/prawn-0.5.0.1/lib"
что, конечно, совершенно нелепо. Итак, вопрос в том, как мне получить ruby 1.9.1 для распознавания и следования правильному пути драгоценных камней? У меня никогда не было этой проблемы с 1.8.7, поэтому я предполагаю, что это специфично для 1.9.1. Я чувствую, что упускаю что-то совершенно очевидное здесь, и любая помощь будет высоко ценится!