[MacRuby] #1486: conftest crashes that is generated by check_sizeof of mkmf
MacRuby
ruby-noreply at macosforge.org
Sat Mar 24 07:12:44 PDT 2012
#1486: conftest crashes that is generated by check_sizeof of mkmf
----------------------------------+-----------------------------------------
Reporter: watson1978@… | Owner: lsansonetti@…
Type: defect | Status: new
Priority: minor | Milestone:
Component: MacRuby | Keywords:
----------------------------------+-----------------------------------------
Test Script:
{{{
require 'mkmf'
open("/tmp/confdefs.h", "w") {|f|
f.puts "typedef struct {char x;} test1_t;"
}
size = check_sizeof("test1_t", "/tmp/confdefs.h")
p size
}}}
{{{
$ macruby t.rb
checking size of test1_t in /tmp/confdefs.h...
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:543:in
`block': can't convert nil into Integer (TypeError)
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:317:in
`block'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:254:in
`open'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:310:in
`xpopen'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:542:in
`try_constant'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:1021:in
`block'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:693:in
`block'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:280:in
`block'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:254:in
`open'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:280:in
`block'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:254:in
`open'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:276:in
`postpone'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:692:in
`checking_for'
from
/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/ruby/1.9.2/mkmf.rb:1013:in
`check_sizeof'
from /Users/watson/tmp/t.rb:6:in `<main>'
$ ruby -v t.rb
ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-darwin11.3.0]
checking size of test1_t in /tmp/confdefs.h... 1
1
}}}
If I run conftest on Terminal
{{{
$ ./conftest
objc[16635]:
'/Library/Frameworks/MacRuby.framework/Versions/0.12/usr/lib/libmacruby.dylib'
was compiled with -fobjc-gc-only, but the application does not support GC
objc[16635]: *** GC capability of application and some libraries did not
match
zsh: illegal hardware instruction ./conftest
}}}
It seems that conftest is linked libmacruby.dylib when it is generated as
executable file.
So, I think to need '-fobjc-gc-only' flag for generating conftest.
--
Ticket URL: <http://www.macruby.org/trac/ticket/1486>
MacRuby <http://macruby.org/>
More information about the macruby-tickets
mailing list