kumaryu日記
2004-08-07 眠い
_ 疲れたよー
もう眠くて眠くて…
_ wxWidgets
wx-cをdl経由でrubyから使うのは成功。Win32では簡単。wx.NETのバイナリを落としてきてその中のwx-c.dllを適当のロードして普通に使えた。
Macではかなり苦労した。
まずwxWidgets自体が共有ライブラリで作られてるしなぜかロードパスが変。なのでビルドから始め。 wxWidgetsの2.5.2をビルド。オプションは--with=macと--disable-shared*1。 あとで気付いたけどwx.NETのビルド時にいっしょにwxWidgets自体もビルドできるらしい。
wx.NETのビルドはBuild/MacOSX内でDefs.in.templateをDefs.inにリネームして中身を書きかえ。書き換え自体はwxWidgetのパスとかインストール先を指定するだけなんで簡単。 その後にmake wxnet。 Bin/にwx-c.dylibとかwx.NET.dllができてる。
さて。ビルド自体は簡単にいく。 しかしrubyからのwx-c.dylibのロードが上手くいかない。 NSObjectが見付からないとかいうエラーでロード失敗。 調べるとFundation.frameworkがリンクされてないらしい?
ということでFoundationとかリンクしたいけど…。make wxnetする度にMakefile作り直しやがるの。そういうことでSrc/wx-c内でmake。…-framework Foundationとか付けても全然改善のきざしなし。 NetscapePluginDocumentViewとかなんとかでエラーなのでWebKitを外してみても同じエラーが。 そこで-framework Cocoaも外してみたらOK。 なんでこれでいいのかわからんなー。
しかもwx.NETのサンプルはちゃんと実行できるし。どうしてだろう。
それから簡単にFrameを出すプログラムを試してみるけど、FrameがどうしてもTerminalの後にしか出ないしフォーカスも移動しない。 wx.NETのサンプルをmonoからそのまま実行した時も同じようになるのでwx.NETのサンプルを参考にアプリケーションバンドルにしてみたら上手くいった。
それだけのことと言えばそうなんだけど、大分苦労した気がする。 3時までやっててその後出勤して帰るの0時とかやってたからな。
OSXのバンドルについてもやっと理解してきた。 この辺の情報が日本語で有るととても便利なんだがどの本がいいんだろう? 入門CocoaはCocoaとObj-Cの説明だけだし。 そうでなくて、frameworkの仕組みとかなんでアプリケーションバンドルじゃないとGUIアプリケーションがちゃんと動かないのかとかが知りたいのだが。
*1 --with=cocoaにすると2.5.2ではビルド時にエラー、スナップショットではビルドはできたけどまだまだ未完成な感じ
_ 夏休み
休みの予定を友人の電話でぶち壊される。
いわきに帰っても友達と遊んでると全然休みにならないんだよな。
最近疲れて滅入ってるからちゃんと休みたいんだけど、プロジェクトはそんな雰囲気では無い模様。
んー、でも自分の仕事はそんなにいっぱいではないから休んでおいた方がいいよな。