From: Kevin B. <krb...@ma...> - 2003-11-12 19:12:27
|
Further accounts of my progress follow below. Charles Miller wrote: <snip> > I had the same problem. The weird thing was that the segfault always > occurred during processing of the _second_ file in post-config.rb, no > matter which order I told it to process the files in. > <snip> > When I edited post-config.rb and put a call to "GC.start" right > underneath "load 'tool/create-appkit-and-foundation.rb'", the config > worked. This worked for me as well. I then ran into the problem of not being able to find libruby.a (I'm really going from a stock Panther install, no recompiling ruby even for the static library), so I opened the project (framework/RubyCocoa.pbproj) in Xcode and made it link to the installed libruby.1.dylib instead. I'm still not sure if building it against the dynamic library will work, but I'm giving it a shot since Panther includes it. Here's another issue I ran into: src/objc/cocoa/rb_NSGraphics.m: In function `init_NSGraphics': src/objc/cocoa/rb_NSGraphics.m:1483: error: `NSAlphaEqualToData' undeclared (first use in this function) src/objc/cocoa/rb_NSGraphics.m:1484: error: `NSAlphaAlwaysOne' undeclared (first use in this function) From Mac OS X Panther Release Notes: Cocoa Application Framework (http://developer.apple.com/documentation/ReleaseNotes/Cocoa/ AppKit.html): Obsolete Symbols NSAlphaEqualToData and NSAlphaAlwaysOne (with values of 1 and 2, respectively) have been removed from NSGraphics.h as they have not been used since before 10.0. I commented out the two appropriate lines in framework/src/objc/rb_NSGraphics.m, and the build continued. Similarly, I found a number of constants in NSSavePanel that were deprecated and have been removed as of 10.3: NSFileHandlingPanelImageButton NSFileHandlingPanelTitleField NSFileHandlingPanelBrowser NSFileHandlingPanelForm NSFileHandlingPanelHomeButton NSFileHandlingPanelDiskButton NSFileHandlingPanelDiskEjectButton I commented these out in framework/src/objc/rb_NSSavePanel.m. After this, the build completed successfully, but it still doesn't appear to result in a working RubyCocoa: kbullock:Source/ruby/rubycocoa-0.4.0% irb -r 'osx/cocoa' objc: failed objc_getClass(NSObject) for NSServicesPasteboard->isa->isa objc: please link appropriate classes in your program This one I can't figure out. I can't even find what NSServicesPasteboard is on Apple's developer site. Any ideas here? Is anyone on the Japanese list working on this? (I unfortunately can't read Japanese.) Thanks for your help so far. If I can get this working, I'll submit a patch back. Pacem in terris / Mir / Shanti / Salaam / Heiwa Kevin R. Bullock |