即使安装了gem,Ruby也找不到所需的库 [英] Ruby cannot find required libraries even though gem is installed
问题描述
我花了几天的时间尝试安装ruby 1.9.2并使用gem工作: - /我最终放弃了我的Mac OSX 10.6机器,下面是我的Ubuntu机器上的当前状态。
#ruby test.rb
< internal:lib / rubygems / custom_require> :29:在`require'中:没有这样的文件加载 - mongo(LoadError)
from< internal:lib / rubygems / custom_require>:29:'require'
from test.rb: 1:在< main>中
#cat test.rb
require'mongo'
db = Mongo :: Connection.new.db(mydb)
# gem哪mongo
/usr/local/rvm/gems/ruby-1.9.2-p0/gems/mongo-1.1.2/lib/mongo.rb
#cat / etc / lsb-release
DISTRIB_ID = Ubuntu
DISTRIB_RELEASE = 10.10
DISTRIB_CODENAME = maverick
DISTRIB_DESCRIPTION =Ubuntu 10.10
根据此页面: http://docs.rubygems.org / read / chapter / 19
我符号化了我用来匹配哪个宝石的ruby:
#which ruby
/ usr / local / rvm / bin / ruby
#ls -l`which ruby`
lrwxrwxrwx 1 root root 44 2010-11-17 13:25 / usr / local / rvm / bin / ruby - > /usr/local/rvm/rubies/ruby-1.9.2-p0/bin/ruby
#gem env | grep'RUBY EXECUTABLE'
- RUBY EXECUTABLE:/usr/local/rvm/rubies/ruby-1.9.2-p0/bin/ruby
#其中gem
/ usr / local / rvm / bin / gem
#gem -v
1.3.7
#ruby -v
ruby 1.9.2p0(2010-08-18修订版29036)[i686-linux]
为什么rvm显示在 / usr / local / rvm /
路径?您是否使用管理整个系统的系统的系统管理员进行系统范围的安装为多个用户?
您是否添加了 [[-s'/ usr / local / lib / rvm']]&& / usr / local / lib / rvm'
到您的〜/ .bashrc
,〜/ .bash_profile
或〜/ .profile
(无论你已经配置)?
对于正常,每天使用,我推荐RVM的默认设置:
RVM安装, RVM gems management 。
自我注意:在RVM中购买股票。太酷了。
I have spent literally days trying to install ruby 1.9.2 and get it working with gems :-/ I eventually gave up on my Mac OSX 10.6 machine and below is the current state on my Ubuntu machine. Any advice would be greatly appreciated!
# ruby test.rb
<internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- mongo (LoadError)
from <internal:lib/rubygems/custom_require>:29:in `require'
from test.rb:1:in `<main>'
# cat test.rb
require 'mongo'
db = Mongo::Connection.new.db("mydb")
# gem which mongo
/usr/local/rvm/gems/ruby-1.9.2-p0/gems/mongo-1.1.2/lib/mongo.rb
# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.10
DISTRIB_CODENAME=maverick
DISTRIB_DESCRIPTION="Ubuntu 10.10"
According to this page: http://docs.rubygems.org/read/chapter/19 I symlinked which ruby I was using to match that which gem is using:
# which ruby
/usr/local/rvm/bin/ruby
# ls -l `which ruby`
lrwxrwxrwx 1 root root 44 2010-11-17 13:25 /usr/local/rvm/bin/ruby -> /usr/local/rvm/rubies/ruby-1.9.2-p0/bin/ruby
# gem env | grep 'RUBY EXECUTABLE'
- RUBY EXECUTABLE: /usr/local/rvm/rubies/ruby-1.9.2-p0/bin/ruby
# which gem
/usr/local/rvm/bin/gem
# gem -v
1.3.7
# ruby -v
ruby 1.9.2p0 (2010-08-18 revision 29036) [i686-linux]
Why is "rvm" displaying in your /usr/local/rvm/
path? Did you do a system-wide install, as a system administrator using administering Ruby system wide for multiple users?
Did you add [[ -s '/usr/local/lib/rvm' ]] && source '/usr/local/lib/rvm'
to your ~/.bashrc
, ~/.bash_profile
or ~/.profile
(whichever you have configured)?
For normal, every day use, I recommend RVM's default setup: RVM installation, RVM gems management.
Note to self: Buy stock in RVM. It's too cool.
这篇关于即使安装了gem,Ruby也找不到所需的库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!