2012年7月 4日

[ruby-list:48815] Windows環境でのRuby1.8系から1.9系への移行に伴う拡張ライブラリ問題について

こんにちは。
えだです。

Windows限定の話で長文になります。すいません。
適切な場所がありましたら適宜誘導していただければと思います。


Windows上でruby1.8系を使っていますが、そろそろ本格的に1.9系に

移行しようと思い、いろいろ挑戦していますが過去からのしがらみもあり
(いくつか解決していることもありますが)拡張ライブラリまわりで
苦戦しています。
同様の環境のかたが居ましたら情報共有していただけないでしょうか。

現在選択している実行環境はOneClick installerのRuby 1.9.3p125です。
公式ページからリンクしているWindows版について検討した結果、
mingw環境が追加でインストールしやすそうに思えたことから選びました。
バイナリとしてはartonさんのRuby-1.9.3-p125.msiが最も適している
気がするのですが、気がついたのが遅かったことと自分でライブラリを
コンパイルして追加する時に困るかなとおもって候補から外しました。
またruby-mswin32及びわたなべひろふみさんの提供されていた環境は
すでにメンテナンスされていなさそうなので同じく候補外としました。

■GUIの開発について
1.8系ではVisualuRubyを主として使っていました。
swin及びvrubyがソース配布になったこともあり、mingwでmakeしたところ
特に問題もなく1.9系で使えるようになりました。
しかしVisualuRubyのお供であるところのFormDesignerが動かせていません。
040303版は attr の構文の改訂に伴い、エラーがでるようになっていたので
attr_accesorに書き換えることでフォームが表示されるところまでは
持ち込めましたが、プロパティボックスに触れるとencodeの問題で落ちます。
sourceforgeにおいてあるほうは1.9対応したと思える記述があるのですが
リビジョンr71の最新版を落としてみましたが user/drawframeがないと
怒られます。ファイル名をみるかんじかなりファイルが不足してるのでは
ないかと思いますが、雪見酒さんはこのMLをみられているでしょうか...

C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in
`require':
cannot load such file --
C:/Ruby193/lib/ruby/site_ruby/1.9.1/fdvr/user/drawframe
s (LoadError)


wxrubyについてはgemでインストールできました。
(最初ふつうに gem install wxruby としていたのでハマりましたが
gem install wxruby-ruby19 とすることで普通につかえています)
VisualWX等、Sizerの取り扱いに馴染めないので、便利そうに思いつつ
あんまり使っていないので不具合等はわかりません。

■日本語の取扱ライブラリについて
kakasi, mecab, chasen等をつかっていたのですが、現状ライブラリの
バイナリ配布もないので、自前でコンパイルしてみようと思ったのですが
どれもうまくいっておりません。
kakasiについては本体はmingwでコンパイルできているのですが、
拡張ライブラリの公式(?)最終版がリンク切れのためググって見つけた
kakasi-ruby < http://github.com/hogelog/kakasi-ruby/tree/1.9>;が
1.9対応しているというので、参考までにインストールしてみようとしましたが
↓の状態です。

$ make
linking shared-object kakasi.so
kakasi.o: In function `rb_kakasi_kakasi':
c:\tmp\hogelog-kakasi-ruby-3ae225d/kakasi.c:67: undefined reference to
`_kakasi_
getopt_argv'
c:\tmp\hogelog-kakasi-ruby-3ae225d/kakasi.c:75: undefined reference to
`_kakasi_
do'
c:\tmp\hogelog-kakasi-ruby-3ae225d/kakasi.c:47: undefined reference to
`_kakasi_
close_kanwadict'
collect2.exe: error: ld returned 1 exit status
make: *** [kakasi.so] Error 1

■画像のとりあつかいについて
画像の取扱にRMagickを使っています。
ruby1.9でそのままgemでインストールできるかと思いましたがbuildの際
エラーでとまります。
< http://yasrails.blog33.fc2.com/blog-entry-14.html>;を参考に、
事前に環境変数CPATHとLIBRARY_PATHを設定することでImageMagick 6.7.7との
組み合わせで使えるようになりました。

OpenCVについては< http://d.hatena.ne.jp/ser1zw/20120216/1329322182>;の
ser1zwさんによるruby-opencvがWindows対応しているとのことで
ドキュメントの手順どおりmakeしていますが、OpenCV2.3との組み合わせで
コンパイルまで出来ていますが、ライブラリを呼び出したところで
何の表示もなく固まります。追試できていないのでOpenCVを新しくするか
古くするかで変わるかもしれませんが、未テストです。
動かせているかたいらっしゃいましたらバージョンの組み合わせを含め
おしえていただけませんか。

連投するのもどうかと思い、カテゴリ分けせず、
まとめて文章にしてしまいましたが
不適切でしたら件名を適当にかえてください__)

よろしくお願いします。


投稿者 xml-rpc : 2012年7月 4日 14:06
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/111302
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。