Re: Symbolizing Crash Dump with atos. How does it get the .dSYM?
Re: Symbolizing Crash Dump with atos. How does it get the .dSYM?
- Subject: Re: Symbolizing Crash Dump with atos. How does it get the .dSYM?
- From: Rick Altherr <email@hidden>
- Date: Mon, 25 Feb 2008 12:19:25 -0800
On Feb 25, 2008, at 11:52 AM, Jerry Krinock wrote:
I've read this article:
http://developer.apple.com/tools/xcode/symbolizingcrashdumps.html
In there, after explaining how a dSYM file wonderfully preserves the
symbol-to-address map, it gives a little example of how to symbolize
an address from a crash dump. It says:
Open a Terminal window, and set the current directory to the
TempConverter D/build.Release folder. Then, issue the command:
atos -o Debug/TempConverter.app/Contents/MacOS/TempConverter
0x00002b84
-[ConverterApplicationDelegate setCentigradeTemperature:] (in
TempConverter)
(ConverterApplicationDelegate.m:42)
The last line shows the desired result. But that command does not
make any sense to me. I can't identify the "build.Release" folder
which I am supposed to set the current directory to. I looked in my
"intermediate build" folder, /MyProject/build/MyApp.build/Release/
MyApp.build, but this folder does not have any executables in it.
My products go into a "separate" Builds directory, but of course
"Builds/Release" folder does not a subfolder named "Debug". I am
lost.
The synopsis in man atos is:
atos [ -p pid | partial-executable-name ] [ -o executable ] [ -f
file ] [ -arch architecture ] [ -s slide ] [ -printHeader ]
[ address ... ]
So apparently the nonexistent "Debug/TempConverter.app/Contents/
MacOS/TempConverter" is supposed to be the "executable". Out of
desperation, I tried -o Path/To/My/Stripped/Executable. Result:
atos worked, but of course didn't yield any symbols.
The underlying framework that atos uses doesn't support loading symbol
names from dSYM files in Leopard. GDB does, however.
I thought that the purpose of a dSYM file is to enable atos to map
addresses in a stripped executable to symbols. But how can atos
know about the dSYM if there is no argument to specify it (and no
example that makes any sense)?
It looks in the same folder as the executable. If the executable is
in a bundle (framework, app, etc), it also looks in the directory that
the bundle is in.
I'll be happy to report a bug on this article if someone can tell me
what's missing.
Thanks,
Jerry Krinock
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
@apple.com
This email sent to email@hidden
--
Rick Altherr
Architecture and Performance Group
email@hidden
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden