##目標 ruby-trunk で edge-rails を動かそうぜ!
##参加者
- Rust/OGAWA(conceal-rs)
- cesare
- ginkouno
- Yuumi3
- FUKUDA
##ログ
- ruby-trunk の build
% cd ruby-trunk
% svn up
% autoconf
% ./configure --prefix=/usr/local/ruby-pkg/ruby-1.9-trunk
% make
% sudo make install
% sudo ln -s /usr/local/ruby-pkg/ruby-1.9-trunk/bin/ruby /usr/local/bin/ruby1.9
% sudo ln -s /usr/local/ruby-pkg/ruby-1.9-trunk/bin/gem /usr/local/bin/gem1.9
% sudo ln -s /usr/local/ruby-pkg/ruby-1.9-trunk/bin/rake /usr/local/bin/rake1.9
% sudo ln -s /usr/local/ruby-pkg/ruby-1.9-trunk/bin/irb /usr/local/bin/irb1.9
% rehash
% ruby1.9 --version
ruby 1.9.0 (2008-08-01 revision 18249) [i686-linux]
- edge-rails の clone
% cd edge-rails
% git clone git://github.com/rails/rails.git
- とりあえずprojectを作ってみる
% cd ~/program/rails
% ruby1.9 /path/to/edge-rails/railties/bin/rails ruby-1.9
% cd ruby-1.9
できた.
- 起動確認
% ruby1.9 script/server
/home/rust/program/rails/ruby-1.9/config/boot.rb:86:in `load_rubygems': undefined method `>=' for nil:NilClass (NoMethodError)
from /home/rust/program/rails/ruby-1.9/config/boot.rb:52:in `load_initializer'
from /home/rust/program/rails/ruby-1.9/config/boot.rb:38:in `run'
from /home/rust/program/rails/ruby-1.9/config/boot.rb:11:in `boot!'
from /home/rust/program/rails/ruby-1.9/config/boot.rb:109:in `<top (required)>'
from script/server:2:in `require'
from script/server:2:in `<main>'
いきなり動かない.どうも Gem が Ruby1.9 から取り込まれたのに起因しているようだが,ひとまず 86行目あたりを変更して対処.
86c86
< unless true or rubygems_version >= min_version
---
> unless rubygems_version >= min_version
さらに RAILS_GEM_VERSION もコメントアウトしておく.そして再度挑戦.
% ruby1.9 script/server
gem_prelude.rb:98:in `push_gem_version_on_load_path': Could not find RubyGem rails (>= 0) (LoadError)
from gem_prelude.rb:8:in `gem'
from /home/rust/program/rails/ruby-1.9/config/boot.rb:61:in `load_rails_gem'
from /home/rust/program/rails/ruby-1.9/config/boot.rb:53:in `load_initializer'
from /home/rust/program/rails/ruby-1.9/config/boot.rb:38:in `run'
from /home/rust/program/rails/ruby-1.9/config/boot.rb:11:in `boot!'
from /home/rust/program/rails/ruby-1.9/config/boot.rb:109:in `<top (required)>'
from script/server:2:in `require'
from script/server:2:in `<main>'
んー,これも上記の Gem 系かな?と思ったんだが,もしかしたら Rails を /var/lib/gems から見てるんじゃないかと思い,vender 以下にシンボリックリンクを張ってみる.
% ln -s /path/to/edge-rails/rails /home/rust/program/rails/ruby-1.9/vendor/rails
% ruby1.9 script/server
=> Booting WEBrick...
=> Rails 2.1.0 application started on http://0.0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
[2008-08-02 16:09:15] INFO WEBrick 1.3.1
[2008-08-02 16:09:15] INFO ruby 1.9.0 (2008-08-01) [i686-linux]
[2008-08-02 16:09:15] INFO WEBrick::HTTPServer#start: pid=1964 port=3000
ひとまず動いた.
- ブラウザから見てみる.
http://localhost:3000/ をブラウザで開く.
まあそりゃないよね.と言うわけでインストール.
- sqlite3-rubyをインストール
% sudo gem1.9 install sqlite3-ruby
Building native extensions. This could take a while...
Successfully installed sqlite3-ruby-1.2.2
1 gem installed
Installing ri documentation for sqlite3-ruby-1.2.2...
Installing RDoc documentation for sqlite3-ruby-1.2.2...
- 再度ブラウザから.
% ruby1.9 script/server
違うエラーが出た.いろいろやって調べてみると,どうも sqlite3/database.rb を読み込めないらしい.ファイルはあるのになぜか読めない1ので,ファイルを開いてみることに.
% cat /usr/local/ruby-pkg/ruby-1.9-trunk/lib/ruby/gems/1.9.0/gems/sqlite3-ruby-1.2.2/lib/sqlite3/database.rb
cat: /usr/local/ruby-pkg/ruby-1.9-trunk/lib/ruby/gems/1.9.0/gems/sqlite3-ruby-1.2.2/lib/sqlite3/database.rb: 許可がありません
工工工エエエエエエェェェェェェ(゜Д゜)ェェェェェェエエエエエエ工工工 ん?開けない?何で?と思って,
% ls -la /usr/local/ruby-pkg/ruby-1.9-trunk/lib/ruby/gems/1.9.0/gems/sqlite3-ruby-1.2.2/lib/sqlite3/
合計 84
drwxr-xr-x 3 root root 4096 2008-08-01 22:17 .
drwxr-xr-x 3 root root 4096 2008-08-01 22:17 ..
-rw-r--r-- 1 root root 1745 2008-08-01 22:17 constants.rb
-rw-rw--w- 1 root root 24774 2008-08-01 22:17 database.rb
drwxr-xr-x 4 root root 4096 2008-08-01 22:17 driver
-rw-r--r-- 1 root root 2307 2008-08-01 22:17 errors.rb
-rw-r--r-- 1 root root 7480 2008-08-01 22:17 pragmas.rb
-rw-r--r-- 1 root root 4690 2008-08-01 22:17 resultset.rb
-rw-r--r-- 1 root root 6843 2008-08-01 22:17 statement.rb
-rw-rw--w- 1 root root 3738 2008-08-01 22:17 translator.rb
-rw-r--r-- 1 root root 1057 2008-08-01 22:17 value.rb
-rw-r--r-- 1 root root 153 2008-08-01 22:17 version.rb
642って何ですか....なぜか書き込みしかできない Permission で保存されるようなので,これは Ruby1.9 の Gem の問題か?とは思ったが,ひとまず変更して試してみる.
% sudo chmod 644 /usr/local/ruby-pkg/ruby-1.9-trunk/lib/ruby/gems/1.9.0/gems/sqlite3-ruby-1.2.2/lib/sqlite3/*.rb
- もっかい挑戦
% ruby1.9 script/server
できたーヽ(´ー`)ノ2
##宴 ようやくできたところぐらいで,cesare さんのバッテリーがなくなりそうということで,後はずっと懇親会に.いろいろ話せて楽しかったです.
comments powered by Disqus