前段时间Javaeye上更新了许多Robbin关于RoR实践的总结,很有深度,尤其关于RoR的响应限制问题,深得吾意。去年年中做的两个项目都是在Apache+mongrel环境下部署的,响应速度真的不让人乐观,Robbin的那篇RoR部署深度分析真的是一语中的。今日立刻装起了Ubuntu7.10,对Robbin推崇备至的lighttpd+fcgi模式进行尝试。不过手边只有N年前刻的一张7.04….随便拉,先搞起来再说吧!
装Ubuntu7.10阿,就不再说了吧,装好Ubuntu一看,189个更新,汗一下,都更新了吧…..等,等。
接着装gcc,sudo apt-get install libc6-dev…..
下载Ruby 1.8.6的源码,本想下1.9.0,不过据说1.9.0没有对旧版本进行兼容,还是1.8.6用着吧,编译….狂等….
装rubygems,下了最新的1.0.1,到最后说需要library stubs…..一大堆英文,又说要又说不要,搞不明白,执行gem,说没装,gem install,又提示,直接apt-get install rubygems…..0.9.0版本,喷血。执行一下gem,提示一下错误:
/usr/bin/gem:23: uninitialized constant Gem::GemRunner(NameError)
不懂,google了一下,发现一篇文章,如下介绍:
I tried upgrading my version of rubygems to the most current version by running
sudo gem update –system
Which introduced this error:
/usr/bin/gem:23: uninitialized constant Gem::GemRunner(NameError)
whenever I tried to run rubygems. On the rails forum, I found a fix for it!
Simply add the line to the file /usr/bin/gem (may be different on a mac)
require ‘rubygems/gem_runner’
after
require ‘rubygems’
This fixed the issue in both Ubuntu and OS 10.4.
大意就是打开/usr/bin/gem文件,在require ‘rubygems’前加require ‘rubygems/gem_runner’,用root帐号执行,是没问题了,转回desktop帐号,傻眼了,又说出错了,不包含gem_runner文件…..好办,以后执行gem都用sudo gem….
紧张时刻到了,gem install rails………苦等半天,rubyforge没反应。想起Javaeye以前有个帖子介绍,直接加-source 可以装,翻了翻javaeye,找到了:gem install rails –include-dependencies –source http://gems.rubyonrails.org,哈,也快,一忽儿就说已经装好了,rails -v,看到2.0.2,sudo gem list,看到:
*** LOCAL GEMS ***
actionmailer (2.0.2)
actionpack (2.0.2)
activerecord (2.0.2)
activeresource (2.0.2)
activesupport (2.0.2)
rails (2.0.2)
rake (0.8.1)
哈哈,恭喜恭喜,安装成功了!好了,RoR的安装就到此为止了,时间晚了,fcgi和lighttpd明天再搞吧,现在现把Apatana stido 1.1和netbeans装上吧。
后记:
现在本本一直在跑一个windows 2003,垃圾啊,其实考虑了很久,是不是换Linux系统,朋友Skyweo提供意见,是不是有什么操作离不开win,其实没什么,就是游戏咯,不过这玩意,好像N+N久没碰了。还想弱弱的问句:Linux有类似Photoshop的位图操作软件吗?有的请推荐一个。
这次再装Ubuntu,有过前几次的碰壁经验,感觉很顺利,而且很多东西都集成了,一直考虑用C做点Ruby的扩展,呼呼,Ruby在某些方面还是弱了点,估计不久的将来,会将本本换成Linux的系统。
因为之前安装的版本的执行权限有问题,加上对Linux不太熟悉,所以重新装了一次Ubuntu 7.10,在这里记录一下所碰到的问题和解决办法。
安装gcc,sudo apt-get install libc6-dev。
编译ruby
./configure –prefix=/usr/local/ruby
这里注意,假如使用的是桌面用户,要先去/usr/local/,sudo mkdir ruby,然后更改该目录权限:sudo chmod 777 ruby
然后执行编译,make && make install,如没有对ruby更改权限,会导致生成目录时出错。
安装rubygems
注,需要ruby-zlib库,可去http://raa.ruby-lang.org/project/ruby-zlib下载。
ruby execonf.rb
make && make install
安装rake,
安装Rails,gem install rails –include-dependencies –source http://gems.rubyonrails.org
注:安装过程如提示,ERROR: While executing gem … (Zlib::BufError),请更新你的rubygems的版本,gem update –system