我最近在fedora 12中安装了rails,我也是第一次接触linux。在Windows7上一切正常,但我在linux上遇到了很多问题。请帮帮我!
据我所知,我已经安装了所有必备组件来启动和运行基本的脚本/服务器。当我尝试脚本/服务器时,boot.rb弹出了这个错误。我想在这里给出一些细节:
rails、ruby和gem的安装目录,
[vineeth@localhost my_app]$ which ruby
/usr/local/bin/ruby
[vineeth@localhost my_app]$ which rails
/usr/bin/rails
[vineeth@localhost my_app]$ which gem
/usr/bin/gem
当我运行脚本/服务器时,这是一个错误。
[vineeth@localhost my_app]$ script/server
./script/../config/boot.rb:9:in `require': no such file to load -- rubygems (LoadError)
from ./script/../config/boot.rb:9
from script/server:2:in `require'
from script/server:2
路径文件如下所示
[vineeth@localhost my_app]$ cat ~/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH="/usr/local/bin:/usr/local/sbin:/usr/bin/ruby:$PATH"
我认为这与路径文件有关。让我知道我需要在这里做什么修改。如果我还有其他需要修改的地方,请让我知道。
发布于 2012-09-12 18:10:05
由于安装了多个ruby副本,我在Ubuntu上也遇到了类似的问题。(1.8和1.9.1)不幸的是,我两个都需要。解决方案是使用:
$ sudo update-alternatives --config ruby
There are 2 choices for the alternative ruby (providing /usr/bin/ruby).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/ruby1.8 50 auto mode
1 /usr/bin/ruby1.8 50 manual mode
2 /usr/bin/ruby1.9.1 10 manual mode
Press enter to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/ruby1.9.1 to provide /usr/bin/ruby (ruby) in manual mode.
完成该包安装后,安装成功。
发布于 2013-05-04 13:27:28
好吧,我是一个Ruby菜鸟,但我得到的修复结果与这里的答案略有不同,所以希望这能对其他人有所帮助(tl;dr:我使用RVM将系统Ruby版本切换到rubygems期望的版本)。
首先,列出Eimantas提到的所有红宝石是一个很好的起点:
> which -a ruby
/opt/local/bin/ruby
/Users/Brian/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
/Users/Brian/.rvm/bin/ruby
/usr/bin/ruby
/opt/local/bin/ruby
系统使用的默认Ruby实例似乎是1.8.7:
> ruby -v
ruby 1.8.7 (2010-06-23 patchlevel 299) [i686-darwin10]
而Rubygems使用的版本是由RVM管理的1.9.2版本:
> gem env | grep 'RUBY EXECUTABLE'
- RUBY EXECUTABLE: /Users/Brian/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
所以这绝对是问题所在。我自己并不经常使用Ruby (这只是我试图运行的构建系统脚本的一个依赖项),所以我并不关心哪个版本是出于其他目的而激活的。由于rubygems期望的是已经由RVM管理的1.9.2版本,所以我简单地使用RVM将系统切换到使用1.9.2版本作为默认版本:
> rvm use 1.9.2
Using /Users/Brian/.rvm/gems/ruby-1.9.2-p290
> ruby -v
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin11.3.0]
这样做之后,我的“没有这样的文件”的问题就消失了,我的脚本开始工作了。
发布于 2014-03-13 23:19:52
我只想补充一下,在我的例子中,没有安装rubygems
。
运行sudo apt-get install rubygems
解决了这个问题!
https://stackoverflow.com/questions/2896485
复制相似问题