Hello,

dear list, allow me another stupid question: I want to go into MacRuby's guts, 
and throw gdb at it.

Attempting to look at issue #753, I did the naive thing:

% gdb macruby
(gdb) break dispatcher.cpp:1343

The answer here was: 
"No symbol table is loaded.  Use the "file" command.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (dispatcher.cpp:1343) pending."

Question 1:
Do I need to build MacRuby differently to get a symbol file? Or is it just 
hidden away somewhere?

When I continue:

(gdb) run test_webrick.rb

After a while, what I get is:

[2010-07-09 19:42:21] ERROR Errno::EINTR: Interrupted system call - select(2) 
failed
        
/Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/server.rb:83:in
 `block'

Which is way off from the error I would expect.

If I do not try to set a breakpoint, I get the expected console output 
("Assertion failed: ((b->flags & flags) == flags), function 
rb_vm_prepare_block, file dispatcher.cpp, line 1343."), and a SIGABRT. The 
backtrace looks, well, not really nice.

Question 2: Am I even approaching this right? Or do I need to take special 
precautions?

 
Thanks a lot

Alex
_______________________________________________
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel

Reply via email to