[脚本_Ruby] Windows平台编译安装Ruby On Rails

一直使用官方网站下载的ruby 1.8.5二进制包,感觉在windows下速度一般,决定自己编译一下看有没有优化的空间 

我的机器是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文件: 
Java代码  收藏代码
  1. 60行:#define GC_MALLOC_LIMIT 8000000 (默认为200000)  
  2. 312行:#define HEAP_MIN_SLOTS 60000  (默认为10000)  
  3. 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。 
打开命令行,执行: 
Java代码  收藏代码
  1. C:Program FilesMicrosoft Visual StudioVC98Binvcvars32.bat  
  2. set INCLUDE=%INCLUDE%;C: empsupportinclude  
  3. set LIB=%LIB%;C: empsupportlib  

不要关闭这个命令行窗口,以下编译过程将在此命令行窗口进行。 

4、编译Ruby并安装到目标路径: 
按ruby编译安装说明,依次执行以下命令: 
Java代码  收藏代码
  1. cd  emp uby-1.8.6-p111  
  2. win32configure.bat i686-mswin32  
  3. nmake  
  4. nmake rubyw.exe  
  5. nmake test  

执行完成后,即已经生成ruby可执行文件,需要安装到目标路径,假设为C:opt uby-1.8.6,执行以下命令: 
Java代码  收藏代码
  1. nmake DESTDIR=C:opt uby-1.8.6 install  

执行完成后,把C:opt uby-1.8.6in加入到PATH变量,即完成了ruby的编译安装。 

5、安装gem 
首先关闭掉之前编译的命令行,打开新的命令行窗口,执行以下命令确认已经在使用编译版本的ruby: 
Java代码  收藏代码
  1. ruby -v  

下载最新的gem(http://rubyforge.org/frs/?group_id=126),目前为0.9.5。解压到一个临时目录,假设为C: emp ubygems-0.9.5。执行: 
Java代码  收藏代码
  1. cd C: emp ubygems-0.9.5  
  2. ruby setup.rb  

最后确认一下已经是使用了最新的gem: 
Java代码  收藏代码
  1. gem -v  


6、安装rails 
安装rails就简单了,使用标准的gem安装,我目前项目文件中使用的是rails1.1.6和rails1.2.3,所以执行以下命令: 
Java代码  收藏代码
  1. gem install rails -v 1.1.6  
  2. gem install rails -v 1.2.3  


经测试,ruby运行速度及启动单元测试的速度无明显改善,但也提供了一种手工编译安装的参考方法吧。 
有兴趣的同学可以使用Intel C++编译器或更高版本的VC编译器试一下。
原文地址:https://www.cnblogs.com/webapplee/p/4014522.html