• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Crash report doesn't list function names?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Crash report doesn't list function names?


  • Subject: Re: Crash report doesn't list function names?
  • From: "Theodore H. Smith" <email@hidden>
  • Date: Fri, 22 Jun 2007 19:31:21 +0100


On 22 Jun 2007, at 18:30, Chris Espinosa wrote:


On Jun 22, 2007, at 9:59 AM, Theodore H. Smith wrote:


On Jun 22, 2007, at 9:16 AM, Theodore H. Smith wrote:

STRIP_STYLE = all

That's probably it.

Chris

Really? I probably misunderstood the strip symbols option in Xcode then.


What should it be?

Xcode gives me these 3 options:
"All Symbols - Completely strips the binary, removing the symbol table and relocation information. [all, -s]
Non-Global Symbols - Strips non-global symbols, but saves external symbols. [non-global, -x]
Debugging Symbols - Strips debugging symbols, but saves local and global symbols. [debugging, -S]"


If I strip them all, I lose the debugging symbols. If I strip the debugging symbols, I lose the debugging symbols.

Is it "non-global symbols", then?

There is no "No symbols" option :( That's why I thought it didn't matter. Because I have my "STRIP_INSTALLED_PRODUCT = NO" option set. I thought that cancels out the strip setting.

Now that I've read your original email more closely:

STRIP_INSTALLED_PRODUCT only affects your "install" build—that is, when you do an "xcodebuild install" from the command line, or set Deployment Postprocessing in your configuration. It's for stripping the product that you ship to customers, and isn't relevant to debugging.

The STRIP_STYLE only takes effect when STRIP_INSTALLED_PRODUCT is Yes, so those three choices of how to strip are heeded only when you strip. So it's not a factor here. Your build settings are correct.

OK, that's good to hear.

From the looks of it, your binary has the symbol information for debugging—as you say, you trace it into the last member function in your code, then it jumps Somewhere Else and goes four stack frames deep and crashes, and you have no symbolics.

OK. Well... ElfDataFuzzy.collect comes from the host app which wasn't even made in Xcode, not my library which WAS made in Xcode. I'm debugging my library made in Xcode, of course...


For what it's worth, Xcode CAN debug this project when I build it as a tool, instead of a library.

Perhaps the problem is something in the environment, or loading setup? It's being loaded from REALbasic, perhaps REALbasic isn't doing something correctly when it loads the .dylib and the symbols don't work? It can run most of my functions correctly except this ElfDataFuzzy.collect function, or at least the subfunctions called from there.

I think now that you've ruled out my build settings as being the problem, I can narrow it down to REALbasic itself.

Some ways to do this:

- If you are crashing in Xcode, then the debugger might show what section or library you seem to be in, in the stack frame popup menu.
- Use the Debug > Tools > Shared Libraries window to see what library includes that address.



- If you're in the gdb debugger console, type 'info frame 0x12cd4e0'. This will show you what library it's in. Xcode shows this information in the stack display in the debugger.

Well, Apple's developer report window loads up.

OK I tried running this again... and for *some* reason... I'm getting the full function names. I see :

0 libElfData.dylib_0.128.dylib 0x0101744c OPCrash + 52 (ObjectPlatform.cpp:35)
1 libElfData.dylib_0.128.dylib 0x0100b5db NavParentSibling_ + 139 (ED_DictCore.i:866)
2 libElfData.dylib_0.128.dylib 0x010184d0 MoveNext_1_ + 164 (Core_1_.i:442)
3 libElfData.dylib_0.128.dylib 0x01018602 DictFuzz_1__ + 102 (Core_1_.i:564)
4 libElfData.dylib_0.128.dylib 0x010193c5 ED_Fz_1_Collect + 393 (Core_1_.i:645)
5 0x000992d9 ElfDataFuzzy.Collect%% o<ElfDataFuzzy>o<ElfData>i4i4 + 106


Seriously, I have NO Idea what changed. I thought I didn't change anything, but obviously I must have.

All I can say is that this thing of getting "No Symbol" occurred at least 4 times.

It would be nice to know what changed so if the "no symbol" thing reoccurs I can fix it myself. I should be able to figure it out myself.

Thanks a lot Chris and all the others who helped me here. At the very least I've learnt that my build settings are correct.

Once you determine where the stack frames are, then you can proceed to figure out why they don't have symbols. Most Apple frameworks do; some don't. You may be in a linked framework of your own that was built stripped. You may (rarely) have jumped into corrupt code space for which symbols are not present. Hard to tell without knowing what exactly is at 0x12cd4e0.

-- http://elfdata.com/plugin/ "String processing, done right"


_______________________________________________ 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
References: 
 >Crash report doesn't list function names? (From: "Theodore H. Smith" <email@hidden>)
 >Re: Crash report doesn't list function names? (From: "Theodore H. Smith" <email@hidden>)
 >Re: Crash report doesn't list function names? (From: Chris Espinosa <email@hidden>)
 >Re: Crash report doesn't list function names? (From: "Theodore H. Smith" <email@hidden>)
 >Re: Crash report doesn't list function names? (From: Chris Espinosa <email@hidden>)

  • Prev by Date: Re: Crash report doesn't list function names?
  • Next by Date: Re: Build Results window feature request
  • Previous by thread: Re: Crash report doesn't list function names?
  • Next by thread: Re[2]: Crash report doesn't list function names?
  • Index(es):
    • Date
    • Thread