我的机器是Thinkpad T43,配置PM1.73G 内存1G win2003。以下过程的前提是安装了VC6.0,并且需要确保存在以下命名:nmake、cl、lib、dumpbin。更高版本的VC我没有试过。
1、下载最新的ruby源代码包
目前最新的源代码包是1.8.6p111(下载地址:ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6-p111.tar.gz),下载后解压到一个临时目录,假设为C: emp uby-1.8.6-p111。
2、调整优化ruby源代码参数
注:此步骤是参考一些优化文章加入的,为试验性质,目前我还没有进行压力测试,无法证明其有效性,建议跳过
修改gc.c文件:
- 第60行:#define GC_MALLOC_LIMIT 8000000 (默认为200000)
- 第312行:#define HEAP_MIN_SLOTS 60000 (默认为10000)
- 第315行:#define FREE_MIN 40960 (默认为4096)
3、设置编译环境变量:
运行gem及rails需要ssl、zlib等扩展库支持,需要配置对应include及lib环境。
下载附件support.zip(http://www.iteye.com/topics/download/361e3f7a-4903-4400-96d9-313d315f6889),把附件中文件的include及lib都解压到一个临时目录,假设分别为C: empsupportinclude及C: empsuportlib。
打开命令行,执行:
- C:Program FilesMicrosoft Visual StudioVC98Binvcvars32.bat
- set INCLUDE=%INCLUDE%;C: empsupportinclude
- set LIB=%LIB%;C: empsupportlib
不要关闭这个命令行窗口,以下编译过程将在此命令行窗口进行。
4、编译Ruby并安装到目标路径:
按ruby编译安装说明,依次执行以下命令:
- cd emp uby-1.8.6-p111
- win32configure.bat i686-mswin32
- nmake
- nmake rubyw.exe
- nmake test
执行完成后,即已经生成ruby可执行文件,需要安装到目标路径,假设为C:opt uby-1.8.6,执行以下命令:
- nmake DESTDIR=C:opt uby-1.8.6 install
执行完成后,把C:opt uby-1.8.6in加入到PATH变量,即完成了ruby的编译安装。
5、安装gem
首先关闭掉之前编译的命令行,打开新的命令行窗口,执行以下命令确认已经在使用编译版本的ruby:
- ruby -v
下载最新的gem(http://rubyforge.org/frs/?group_id=126),目前为0.9.5。解压到一个临时目录,假设为C: emp ubygems-0.9.5。执行:
- cd C: emp ubygems-0.9.5
- ruby setup.rb
最后确认一下已经是使用了最新的gem:
- gem -v
6、安装rails
安装rails就简单了,使用标准的gem安装,我目前项目文件中使用的是rails1.1.6和rails1.2.3,所以执行以下命令:
- gem install rails -v 1.1.6
- gem install rails -v 1.2.3
经测试,ruby运行速度及启动单元测试的速度无明显改善,但也提供了一种手工编译安装的参考方法吧。
有兴趣的同学可以使用Intel C++编译器或更高版本的VC编译器试一下。