鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 编程语言开发 > ruby > >

Ruby on Rails,使用gem安装rails,付解决It seems your ruby installati

来源:互联网 作者:佚名 时间:2012-11-15 13:23
在前面,我们学会了使用RVM的作用和利用RVM安装ruby并管理其版本的方法。 下一步就是使用ruby中的gem工具安装rails(rails也是ruby中的gem),关于gem是什么请移步《关于rubygem你需要知道的》 先使用rvm将ruby切换至需要的版本(我当前用的是1.9.3),因为rai

在前面,我们学会了使用RVM的作用和利用RVM安装ruby并管理其版本的方法。

下一步就是使用ruby中的gem工具安装rails(rails也是ruby中的gem),关于gem是什么请移步《关于rubygem你需要知道的》

先使用rvm将ruby切换至需要的版本(我当前用的是1.9.3),因为rails将会被安装在当前使用的ruby版本目录中。不会的请移步《Ruby on Rails,在ubuntu中安装及使用rvm管理ruby版本》。

确认当前使用的gem命令是我想要安装rails的版本,没错就是这里。

abbuggy@abbuggy-ubuntu:~$ which gem /home/abbuggy/.rvm/rubies/ruby-1.9.3-head/bin/gem

通过gem install 命令安装rails,安装是成功的,但是提示了错误:

It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.

abbuggy@abbuggy-ubuntu:~$ gem install rails ... It seems your ruby installation is missing psych (for YAML output). To eliminate this warning, please install libyaml and reinstall your ruby. ...

rails不自带依赖的libyaml,提示很清楚了,让我安装libyaml后重新安装ruby。

在新利得中明明是安装了libyaml的,美国空间,说实话这块我不懂,希望了解的同学解答。

1352908137_4177

从google上察看别人的解决方案,需要安装名为libyaml-dev的包。

abbuggy@abbuggy-ubuntu:~$ sudo apt-get install libyaml-dev 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列【新】软件包将被安装: libyaml-dev 升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,香港服务器,有 0 个软件包未被升级。 需要下载 0 B/66.4 kB 的软件包。 解压缩后会消耗掉 239 kB 的额外空间。 Selecting previously unselected package libyaml-dev. (正在读取数据库 ... 系统当前共安装有 198558 个文件和目录。) 正在解压缩 libyaml-dev (从 .../libyaml-dev_0.1.4-2_i386.deb) ... 正在设置 libyaml-dev (0.1.4-2) ... abbuggy@abbuggy-ubuntu:~$

安装完成后,卸载ruby准备重新安装。这时候可以使用uninstall命令,保留安装ruby时曾经下载的文件不用重下了。

abbuggy@abbuggy-ubuntu:~$ rvm uninstall ruby-1.9.3-head /home/abbuggy/.rvm/src/ruby-1.9.3-head has already been removed. /home/abbuggy/.rvm/rubies/ruby-1.9.3-head has already been removed.

和之前的操作一样,再次安装ruby和rails。就没有问题啦!

abbuggy@abbuggy-ubuntu:~$ rails -v Rails 3.2.9

迫不及待的创建项目;启动启动!Oops!错啦!Could not find a JavaScript runtime.

abbuggy@abbuggy-ubuntu:~/test_site$ rails server /home/abbuggy/.rvm/gems/ruby-1.9.3-head/gems/execjs-1.4.0/lib/execjs/runtimes.rb:51:in `autodetect': Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)

好在这个问题我见过,缺少js运行环境,安装nodejs包来解决。

abbuggy@abbuggy-ubuntu:~$ sudo apt-get install nodejs

重新启动,一切正常了。

abbuggy@abbuggy-ubuntu:~/test_site$ rails server => Booting WEBrick => Rails 3.2.9 application starting in development on :3000 => Call with -d to detach => Ctrl-C to shutdown server [2012-11-15 00:03:22] INFO WEBrick 1.3.1 [2012-11-15 00:03:22] INFO ruby 1.9.3 (2012-11-14) [i686-linux] [2012-11-15 00:03:22] INFO WEBrick::HTTPServer#start: pid=7301 port=3000

美国空间
网友评论
<