Thread View: comp.sys.mac.programmer.codewarrior
6 messages
6 total messages
Started by Kent Sorensen
Tue, 27 May 2003 20:43
How to find routine names from crashlog and xMAP ?
Author: Kent Sorensen
Date: Tue, 27 May 2003 20:43
Date: Tue, 27 May 2003 20:43
19 lines
1793 bytes
1793 bytes
I would like to find a way to make release build crashlogs useful. When I get a release crashlog (which of course has no symbols in it) there is nothing I can do to find the offending routine. I use CodeWarrior and I have symbol and linkmap files for the release build. If you have a crashlog from a release build, and the corresponding xMAP and XSYM files how do you actually map the addresses in the crashlog to routines ? I have tried searching for the addresses listed in the crashlog, but they appear to be offset by the programs location in memory so I can't find them in the xMAP. Any pointers appreciated. Thanks Kent
Re: How to find routine names from crashlog and xMAP ?
Author: Isaac Wankerl
Date: Wed, 28 May 2003 18:21
Date: Wed, 28 May 2003 18:21
51 lines
2852 bytes
2852 bytes
In article <kents-0411FF.16434527052003@news21.bellnet.ca>,
Kent Sorensen <kents@snak.REMOVETHIS.com> wrote:
> I would like to find a way to make release build crashlogs useful. When
> I get a release crashlog (which of course has no symbols in it) there is
> nothing I can do to find the offending routine.
>
> I use CodeWarrior and I have symbol and linkmap files for the release
> build.
>
> If you have a crashlog from a release build, and the corresponding xMAP
> and XSYM files how do you actually map the addresses in the crashlog to
> routines ?
>
> I have tried searching for the addresses listed in the crashlog, but
> they appear to be offset by the programs location in memory so I can't
> find them in the xMAP.
>
> Any pointers appreciated.
> Thanks
>
> Kent
You might want to try turning on symbols for a few of the key routines
so you can determine the address space that your application is loaded
into. This can easily be done with pragmas:
void Foo()
{
// ...
}
#pragma traceback on
int main()
{
// ...
}
#pragma traceback reset
Now your crashlog will show main as one of the routines on the stack.
From the address listed there and and address in the xMAP file, I think
you can come up with an offset and apply that to the crashlog addresses
to translate them into the routine names.
--
Isaac Wankerl
Metrowerks
Mac Software Developer
Re: How to find routine names from crashlog and xMAP ?
Author: Kent Sorensen
Date: Thu, 29 May 2003 01:02
Date: Thu, 29 May 2003 01:02
14 lines
1801 bytes
1801 bytes
> You might want to try turning on symbols for a few of the key routines > so you can determine the address space that your application is loaded > into. This can easily be done with pragmas: Ah, that's a good idea. I'll do that for the next version. It still leaves the issue of trying to make sense of a crashlog from the current version. So what does everyone do when a user sends you a release crashlog ? Shrug and move on ? Any folks fom Inside Apple that would have a little tool for this ? Kent
Re: How to find routine names from crashlog and xMAP ?
Author: Miro Jurisic
Date: Thu, 29 May 2003 02:16
Date: Thu, 29 May 2003 02:16
17 lines
1830 bytes
1830 bytes
In article <kents-ABCA48.21020428052003@news21.bellnet.ca>, Kent Sorensen <kents@snak.REMOVETHIS.com> wrote: > > You might want to try turning on symbols for a few of the key routines > > so you can determine the address space that your application is loaded > > into. This can easily be done with pragmas: > > Ah, that's a good idea. I'll do that for the next version. > > It still leaves the issue of trying to make sense of a crashlog from the > current version. So what does everyone do when a user sends you a > release crashlog ? Shrug and move on ? Figure out which stack frame is your main, it's gonna be at a fixed location in the stack. Then you can get everything else as offsets from main. meeroh
Re: How to find routine names from crashlog and xMAP ?
Author: Wade Williams
Date: Fri, 30 May 2003 04:54
Date: Fri, 30 May 2003 04:54
13 lines
1975 bytes
1975 bytes
In article <kents-0411FF.16434527052003@news21.bellnet.ca>, Kent Sorensen <kents@snak.REMOVETHIS.com> wrote: > I would like to find a way to make release build crashlogs useful. When > I get a release crashlog (which of course has no symbols in it) there is > nothing I can do to find the offending routine. Kent, Check out "man atos" Wade
Re: How to find routine names from crashlog and xMAP ?
Author: Kent Sorensen
Date: Fri, 30 May 2003 10:43
Date: Fri, 30 May 2003 10:43
10 lines
1567 bytes
1567 bytes
In article <290520032354584873%wadesworld@mac.com>, Wade Williams <wadesworld@mac.com> wrote: > man atos Interesting tool, but unfortunately it doesn't appear to be suitable in helping decipher an existing release crashlog. The problem is that there are no symbols to begin with. Kent
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads