首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ruby如何找到mkmf?

ruby如何找到mkmf?
EN

Stack Overflow用户
提问于 2012-02-06 09:29:31
回答 1查看 200关注 0票数 0

当我这样做的时候:

代码语言:javascript
复制
ruby extconf.rb

我得到了:

代码语言:javascript
复制
extconf.rb:24:in 'require': no such file to load -- mkmf (LoadError)

当我启动irb并逐行执行extconf.rb中的所有命令时,它工作得很好(包括require 'mkmf')。

irb显然可以找到mkmf时,我如何告诉ruby在哪里可以找到它。我从源代码(1.9.1)编译ruby,它安装在“非标准位置”。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-06 09:43:51

ruby二进制文件缺少一些$LOAD_PATH,它甚至可能是系统irb和自定义ruby之间的冲突。

在任何情况下,您都可以比较ruby -e 'p $:'和在irb中运行p $:的输出...

当您找到缺少的目录时,您可以将其添加到命令行中,如下所示:

代码语言:javascript
复制
$ ruby -I/path/to/missing/loadpath extconf.rb

尽管我强烈建议正确地重新安装ruby,因为这很可能指向一个更深层次的问题,而不仅仅是在这种情况下缺少装入路径。

顺便说一句,通过RVM安装ruby怎么样?它是无痛的,在大多数设置上都能完美地工作。更不用说你可以在同一台机器上使用多个Ruby版本而不会发生任何冲突。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9154706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档