From: adgjmptw / super-r.net
Subject: [ruby-list:45045] Re: WindowsでMySQL/Rubyを使おうとするとmysql.so (LoadError)
Date: Fri, 13 Jun 2008 09:54:19 +0900

るびきちです。

> 原因と思われるものがわかりました。
> MySQLのバージョンが古かった様です。

なるほど。これはやっかいですね。

> > ruby -rmysql -e ''
> 
> 「コマンドラインでrequire」というデバッグ方法もあるのですね。
> この発想は無かった。
> 
> というわけで実行してみたところ、画面には同じメッセージが表示され、
> ポップアップには以下のメッセージが表示されました
> 
> #実行結果ここから--------------------------
> 
> プロシージャエントリポイント mysql_sqlstateがダイナミックリンクライブラ
> リLIBMYSQL.dllから見つかりませんでした。
> 
> #実行結果ここまで--------------------------

わお。新しい情報が出てきましたね。
困ったらとりあえずコマンドラインから実行ですね。

> ・ロリポップのMySQLは4.0.24
>  http://lolipop.jp/?mode=manual&state=hp&state2=cgi
> ・ロリポップのRuby-MySQLのインタフェースはMySQL/Ruby
>   http://flash.lomo.jp/blog/2006/08/ruby_mysql_on.html
(snip)
> プロダクトのバージョンとか依存関係を追いかけながらプログラム
> 組むのってかなり苦痛...

Windowsで動くかわかりませんが、graftというツールが便利です。
http://www.gormand.com.au/peters/tools/graft/graft.html

# symlink使ってるからUnixやCygwinかな。

/pkgsというディレクトリに複数のバージョンのMySQLを入れて、graftでバージョンを
切り換えることができます。
やっていることはシンボリックリンクを /usr/local/bin 等に作成し、それを
自由に張り替えています。

--
rubikitch
Blog: http://d.hatena.ne.jp/rubikitch/
Site: http://www.rubyist.net/~rubikitch/