[Rubycocoa-devel 142] Re: [0.4.2 動作確認 ] osx-10.4.2 + ruby-1.8.3 + xcode-2.0

Back to archive index

kimura wataru kimur****@i*****
Mon Oct 31 21:57:09 JST 2005


 木村です。

>藤本です。
>
>OS 10.4.2 + ruby 1.8.3 + xcode 2.0 + gcc-3.3
>の環境でテストしてみたことに関して結果をアップします。一部サンプルが動きませんでした。とりあえず報告しておきます。
>
 ありがとうございます。問題のでた部分を
OSX 10.3.9 + ruby 1.8.3 + xcode 1.5/gcc 3.3で試してみました。

>=== osx-10.4.2 + ruby-1.8.3
>

>動いたけど、警告がでたもの:
>  $ cd RubyRaiseMan && rm -rf build
>  $ xcodebuild clean build
>  $ open build/RubyRaiseMan.app  => OK
>      2005-10-31 20:05:42.263 RubyRaiseMan[4075] *** -[NSCFString isKindOf:]: \
>        warning: Object compatibility method has been executed at least once. \
>        Convert source code off it NOW!
>
これはisKindOf:メソッドはCocoaでなく、Objective-Cのルートクラスである
Objectのメソッドであるためにでる警告のようです。isKindOfClass:メソッドに
置き換えればよいようです。

http://www.cocoabuilder.com/archive/message/cocoa/2004/12/9/123400

以下の修正で、正常動作&警告がでないことを確認し、コミットしました。

--- MyDocument.rb       18 Dec 2002 00:15:14 -0000      1.2
+++ MyDocument.rb       31 Oct 2005 12:26:35 -0000
@@ -68,7 +68,7 @@
   def tableView_setObjectValue_forTableColumn_row (tblView, obj, col, row)
     identifier = col.identifier
     person = @employees[row]
-    if obj.isKindOf?(NSDecimalNumber) then
+    if obj.isKindOfClass?(NSDecimalNumber) then
       obj = obj.to_f
     else
       obj = obj.to_s


>動いたけど、NSView の警告が出たもの:

 これは仕方ないですね。

>動かなかった:
>  $ cd Pong && rm -rf build
>  $ xcodebuild clean build
>  $ open build/Pong.app
>      2005-10-31 20:10:23.067 Pong[4224] PlayingView(0x4f6520) - \
>        NSView not correctly initialized. Did you forget to call super? \
>        ...Resources/Model.rb:168:in `NSApplicationMain': NSApplicationMain - \
>          RBException_NoMethodError - \
>          undefined method `play' for nil:NilClass (OSX::OCException)
>   from ...Resources/rb_main.rb:18
>
こちらの環境では、ボールが2回めに弾むあたりで、ボールが停止して
しまいました。アプリケーションは落ちません。reset + startすると
またちょっとだけ動きます。
 こちらはまたあとでしっかりと調べようと思います。




-- 
kimura wataru



More information about the Rubycocoa-devel mailing list
Back to archive index