[MacRuby] #1000: Xcode fails to load bridgesupport file automatically for user created framework
#1000: Xcode fails to load bridgesupport file automatically for user created framework ----------------------------------+----------------------------------------- Reporter: al_skipp@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: bridgesupport ----------------------------------+----------------------------------------- When linking to a framework that includes a bridgesupport file, it is necessary to explicitly call 'load_bridge_support_file' with the path to the file. Included is a very simple framework that defines one class (TestBlock) with one method: - (void)callBlock:(void (^)())block; If the framework is included in a project it is possible to create a 'TestBlock' object within macruby, but calling the method 'callBlock', will fail. eg b = TestBlock.new b.callBlock( Proc.new {puts "hello from ruby"} ) #fails The code will succeed if 'load_bridge_support_file' is used first. -- Ticket URL: <http://www.macruby.org/trac/ticket/1000> MacRuby <http://macruby.org/>
#1000: Xcode fails to load bridgesupport file automatically for user created framework ----------------------------------+----------------------------------------- Reporter: al_skipp@… | Owner: lsansonetti@… Type: defect | Status: closed Priority: blocker | Milestone: MacRuby 0.8 Component: MacRuby | Resolution: fixed Keywords: bridgesupport | ----------------------------------+----------------------------------------- Changes (by mattaimonetti@…): * status: new => closed * resolution: => fixed * milestone: => MacRuby 0.8 Comment: {{{ $ macirb --simple-prompt
framework File.expand_path('BlockFrameworkTest.framework') => true b = TestBlock.new => #<TestBlock:0x200bf5680> b.callBlock Proc.new{puts 'hello world'} 2010-11-17 09:22:22.922 macruby[26072:903] block: <__NSStackBlock__: 0x7fff5fbf8e20> hello world => #<TestBlock:0x200bf5680> MACRUBY_VERSION => "0.8" MACRUBY_REVISION => "git commit f2e31918601eb80aed8b9ee59625865d46e13db7" }}}
I'm on trunk and as you can see, it's working fine here. Can you try to install a nightly build and give it a spin? Thanks, - Matt -- Ticket URL: <http://www.macruby.org/trac/ticket/1000#comment:2> MacRuby <http://macruby.org/>
#1000: Xcode fails to load bridgesupport file automatically for user created framework ----------------------------------+----------------------------------------- Reporter: al_skipp@… | Owner: lsansonetti@… Type: defect | Status: closed Priority: blocker | Milestone: MacRuby 0.8 Component: MacRuby | Resolution: fixed Keywords: bridgesupport | ----------------------------------+----------------------------------------- Old description:
When linking to a framework that includes a bridgesupport file, it is necessary to explicitly call 'load_bridge_support_file' with the path to the file.
Included is a very simple framework that defines one class (TestBlock) with one method:
- (void)callBlock:(void (^)())block;
If the framework is included in a project it is possible to create a 'TestBlock' object within macruby, but calling the method 'callBlock', will fail. eg
b = TestBlock.new b.callBlock( Proc.new {puts "hello from ruby"} ) #fails
The code will succeed if 'load_bridge_support_file' is used first.
New description: When linking to a framework that includes a bridgesupport file, it is necessary to explicitly call 'load_bridge_support_file' with the path to the file. Included is a very simple framework that defines one class (TestBlock) with one method: {{{ - (void)callBlock:(void (^)())block; }}} If the framework is included in a project it is possible to create a 'TestBlock' object within macruby, but calling the method 'callBlock', will fail. eg {{{ b = TestBlock.new b.callBlock( Proc.new {puts "hello from ruby"} ) #fails }}} The code will succeed if 'load_bridge_support_file' is used first. -- Comment(by martinlagardette@…): Same here: {{{ $> macirb --simple-prompt
framework './BlockFrameworkTest.framework' => true b = TestBlock.new => #<TestBlock:0x200c7a260> b.callBlock Proc.new { puts 42 } 2010-11-17 22:49:16.031 macruby[9858:903] block: <__NSStackBlock__: 0x7fff5fbf8350> 42 => #<TestBlock:0x200c7a260> MACRUBY_VERSION => "0.8" MACRUBY_REVISION => "svn revision 4894 from http://svn.macosforge.org/repository/ruby/MacRuby/trunk"
}}}
What version of MacRuby are you using? -- Ticket URL: <http://www.macruby.org/trac/ticket/1000#comment:3> MacRuby <http://macruby.org/>
#1000: Xcode fails to load bridgesupport file automatically for user created framework ----------------------------------+----------------------------------------- Reporter: al_skipp@… | Owner: lsansonetti@… Type: defect | Status: reopened Priority: blocker | Milestone: Component: MacRuby | Resolution: Keywords: bridgesupport | ----------------------------------+----------------------------------------- Changes (by lsansonetti@…): * status: closed => reopened * resolution: fixed => * milestone: MacRuby 0.8 => Comment: Re-opening. I believe MacRuby should find the frameworks linked into the main executable and appropriately load their bridgesupport files if necessary. -- Ticket URL: <http://www.macruby.org/trac/ticket/1000#comment:4> MacRuby <http://macruby.org/>
#1000: Xcode fails to load bridgesupport file automatically for user created framework ----------------------------------+----------------------------------------- Reporter: al_skipp@… | Owner: lsansonetti@… Type: defect | Status: closed Priority: blocker | Milestone: MacRuby 0.8 Component: MacRuby | Resolution: fixed Keywords: bridgesupport | ----------------------------------+----------------------------------------- Changes (by lsansonetti@…): * status: reopened => closed * resolution: => fixed * milestone: => MacRuby 0.8 Comment: Should be fixed in r4926. -- Ticket URL: <http://www.macruby.org/trac/ticket/1000#comment:5> MacRuby <http://macruby.org/>
participants (1)
-
MacRuby