最近家でゲームなんかやらないんだけどね。
でも、プリンスオブペルシャ面白すぎ。 ちょっぴりずつしか進めてないけど。
あと東方永夜抄。夜中3時過ぎまでやってます。死にそうです。
ああ、なんか東京ゲームショーとかも行ってきました*1。見るもの無くてつまんなかったけど。
昨日WHFの隣でやってたからついでに見に行ったA&Vフェスタの方が楽しかったな。
ゲームショーは事前情報でほとんど情報が出ちゃうからわざわざ見に行くほどのこともない。 PSPとか出てても旧作の移植/リメイクばっかりで全然面白くないしさ。 それでも人がつくなんて、皆何を喜んでるんだろうね。
まあそんな面白くもない高くて時間がかかるだけのゲームは置いておいて、サターンパッドも買ったので永夜抄。
*1 だから一般日は明日だって(以下略
なんかロード出来ねえぞ。
osx/objcなんてディレクトリねぇとか言われるし、ObjcIDなんてクラスねぇとか言われるし。 探すと同じ状況の人もちょっと居るようなんだが解決方法は結局わからないし。
フレームワークがロードできてないみたいなんだが、だったらなんでrequire 'rubycocoa'が何の文句も無く通ってるんだ?
って。あ。メッセージが変わった。
古いRubyCocoa.frameworkが悪さをしてたのか?一旦RubyCocoa.frameworkを消してからインストールしたらエラーが変わった。
_rb_obj_idが重複してるってか。これはruby本体をlibruby.dylibじゃなくてlibruby-static.aにスタティックリンクすればいいのか?なんかダメな気もするが、まあやってみるか。
ダメだった。
つーか、重複してるっていうエラーは消えたが、osx/objc/cocoaがねぇと言われるのは同じ。
なんで、と思ってRubyCocoaのソースを見てみるが、$:にフレームワークのパスを追加してるらしい。でもirb上でrequire 'rubycocoa'してp $:で見ても追加されてない。
ということは。RubyCocoaが見てるload_pathの変数とrubyが見てるload_pathは違うんじゃないか?で、RubyCocoa自体はlibruby-static.aとリンクしちゃってるんで、ruby自体を/Library/Frameworks/RubyCocoa.framework/Versions/A/RubyCocoaにリンクしてやった。
…やったー。$:の先頭にフレームワークのパスが設定されてちゃんとロードできた。これでちゃんと動きそうだな。 まあ、ruby自体がRubyCocoaにリンクしちゃってるが、別に困ることもないはずだしいいだろう。 rubyをビルドし直す時に気を付けるくらいか。
うーん。
さすがにRubyCocoaをロードしただけじゃダメか。 やっぱりターミナルの前にウィンドウ表示はできないな。
そうだよな。 ロードしかしてないもんな。
つーことで、RubyCocoaのサンプルのHelloWorld.rbを参考にOSX::NSApplication.sharedApplication()でアプリケーションオブジェクトを取ってきてみる。
あ、取ってきただけでちゃんと前に来るようになった。
なったけど…。なんだか警告みたいなのが大量に出されてるんですけど。 うーん、Autoreleaseがなんとかって言ってる。よくわからん。 見た目は正しく動いてるように見えるんだけど、ほんとにこれでいいのか?
やっぱりちゃんと初期化するコードを自分で書いた方がいいのかな。 警告を無視しても大丈夫なら上の方法でかまわないんだけど。