ruby как найти mkmf? - PullRequest
       2

ruby как найти mkmf?

0 голосов
/ 06 февраля 2012

Когда я делаю:

ruby extconf.rb

Я получаю:

extconf.rb:24:in 'require': no such file to load -- mkmf (LoadError)

Когда я запускаю irb и выполняю все команды из extconf.rb, строка за строкой работает нормально (включая require 'mkmf').

Как мне сказать ruby, где найти mkmf, когда, очевидно, irb может его найти. Я скомпилировал ruby ​​из исходного кода (1.9.1), и он находится в «нестандартном месте».

1 Ответ

0 голосов
/ 06 февраля 2012

Бинарному файлу ruby ​​не хватает некоторого $LOAD_PATH, это может быть даже конфликт между системой irb и вашим пользовательским ruby.

В любом случае вы можете сравнить выходные данные ruby -e 'p $:' иp $: in irb ...

Когда вы найдете отсутствующий каталог, вы можете добавить его в командной строке следующим образом:

$ ruby -I/path/to/missing/loadpath extconf.rb

Хотя я бы серьезно рекомендовал правильно переустановить ruby, так какэто, скорее всего, указывает на более глубокую проблему, чем просто отсутствие loadpath в этом случае.

Кстати, как насчет установки ruby ​​через RVM ?Это безболезненно и работает безупречно на большинстве установок.Не говоря уже о том, что вы можете использовать несколько версий Ruby на одной машине без каких-либо коллизий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...