总算是完成了ruby 1.9.1 和 rails 2.3 rc1 在cygwin 上的安装运行.
说说自己的安装经历吧(默认安装到/usr/local
首先安装cygwin
cygwin 安装的插件是
default + make + gcc + libiconv (后面编译需要) + openssl + git (从 github 拿gem 需要 当然也可以从网站直接下载) + vim (git 日
志使用)
cygwin下需要编译原文件
到ruby-lang(http://ruby-lang.org/) 下载ruby-1.9.1-p0.tar.gz
mkdir tmp
cd /tmp
将下好的gz 文件放到tmp文件夹
tar xvf ruby-1.9.1-p0.tar.gz
cd ruby-1.9.1-p0
./configure
make && make install
之后是sqlite3 (http://www.sqlite.org/download.html)
下载源代码
sqlite-3.6.10.tar.gz 放到tmp目录
tar xvf sqlite-3.6.10.tar.gz
mkdir bld
cd bld
../sqlite-3.6.10/configure -disable-tcl
make && make install
make sqlite3.dll
cp sqlite3.dll /usr/local/bin
最后是安装 sqlite3-ruby
gem install sqlite3-ruby (windows 死活搞不定的sqlite3-ruby 1.2.4
在说说 rails 2.3 rc 1 安装
gem install rake rack
gem install rails --source=http://gems.rubyonrails.org
rack 0.9.1 版不兼容 ruby 1.9.1 原因是 String.each method 被取消了
修改rack gem 目录下的
/lib/rack/handler/webrick.rb
原段落:
vs.each { |v|
res[k] = v
}
改为:
res[k] = vs
或者
到github 下载新的master 版
解压覆盖rack gem 目录下的文件
cd /usr/ruby/work
rails demo
cd demo
ruby script/server
此时提示找不到iconv.so (google 之后 似乎1.8.6以上版本不会自动生成iconv.so文件了
转到ruby 1.9.1 源代码处
cd /tmp/ruby-1.9.1-p0/ext/iconv
ruby extconf.rd (如果之前cygwin 安装是没有选择libiconv 此处可能会有错误 再次运行cygwin安装文件 安装吧
会生成makefile
make
生成iconv.so 文件
make install
或者
cp iconv.so /usr/local/lib/ruby/1.9.1/i386-cygwin/
再次cd /usr/ruby/work/demo
ruby script/server
这次提示找不到openssl
openssl.so 文件安装方法同iconv.so
搞定之后
ruby script/server
转到浏览器
127.0.0.1:3000
可以看到rails 页面了
About your aplication's environment
Ruby version 1.9.1 (i386-cygwin)
RubyGems version 1.3.1
Rails version 2.3.0
Active Record version 2.3.0
Action Pack version 2.3.0
Active Resource version 2.3.0
Action Mailer version 2.3.0
Active Support version 2.3.0
Application root /cygdrive/d/ruby/work/test/app
Environment development
Database adapter sqlite3
Database schema version 0
Ok

说说自己的安装经历吧(默认安装到/usr/local
首先安装cygwin
cygwin 安装的插件是
default + make + gcc + libiconv (后面编译需要) + openssl + git (从 github 拿gem 需要 当然也可以从网站直接下载) + vim (git 日
志使用)
cygwin下需要编译原文件
到ruby-lang(http://ruby-lang.org/) 下载ruby-1.9.1-p0.tar.gz
mkdir tmp
cd /tmp
将下好的gz 文件放到tmp文件夹
tar xvf ruby-1.9.1-p0.tar.gz
cd ruby-1.9.1-p0
./configure
make && make install
之后是sqlite3 (http://www.sqlite.org/download.html)
下载源代码
sqlite-3.6.10.tar.gz 放到tmp目录
tar xvf sqlite-3.6.10.tar.gz
mkdir bld
cd bld
../sqlite-3.6.10/configure -disable-tcl
make && make install
make sqlite3.dll
cp sqlite3.dll /usr/local/bin
最后是安装 sqlite3-ruby
gem install sqlite3-ruby (windows 死活搞不定的sqlite3-ruby 1.2.4
在说说 rails 2.3 rc 1 安装
gem install rake rack
gem install rails --source=http://gems.rubyonrails.org
rack 0.9.1 版不兼容 ruby 1.9.1 原因是 String.each method 被取消了
修改rack gem 目录下的
/lib/rack/handler/webrick.rb
原段落:
vs.each { |v|
res[k] = v
}
改为:
res[k] = vs
或者
到github 下载新的master 版
解压覆盖rack gem 目录下的文件
cd /usr/ruby/work
rails demo
cd demo
ruby script/server
此时提示找不到iconv.so (google 之后 似乎1.8.6以上版本不会自动生成iconv.so文件了
转到ruby 1.9.1 源代码处
cd /tmp/ruby-1.9.1-p0/ext/iconv
ruby extconf.rd (如果之前cygwin 安装是没有选择libiconv 此处可能会有错误 再次运行cygwin安装文件 安装吧
会生成makefile
make
生成iconv.so 文件
make install
或者
cp iconv.so /usr/local/lib/ruby/1.9.1/i386-cygwin/
再次cd /usr/ruby/work/demo
ruby script/server
这次提示找不到openssl
openssl.so 文件安装方法同iconv.so
搞定之后
ruby script/server
转到浏览器
127.0.0.1:3000
可以看到rails 页面了
About your aplication's environment
Ruby version 1.9.1 (i386-cygwin)
RubyGems version 1.3.1
Rails version 2.3.0
Active Record version 2.3.0
Action Pack version 2.3.0
Active Resource version 2.3.0
Action Mailer version 2.3.0
Active Support version 2.3.0
Application root /cygdrive/d/ruby/work/test/app
Environment development
Database adapter sqlite3
Database schema version 0
Ok