• 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: How to make atos give symbols?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to make atos give symbols?


  • Subject: Re: How to make atos give symbols?
  • From: Rick Altherr <email@hidden>
  • Date: Tue, 29 Jan 2008 09:02:04 -0800


On Jan 28, 2008, at 10:21 PM, Jerry Krinock wrote:


On 2008 Jan, 28, at 21:58, Chris Espinosa wrote:

Stripped means stripped. The symbols are gone. There are no symbols in that binary to be found. atos can't make data out of nothing; nothing can.

Ah, except 'otool -ov' can get Objective-C classes and method names because these are never stripped. I was expecting that atos would have this same capability, but apparently atos is not "Objective-C aware" as otool is?


If you had saved your pre-stripped binary from the build you distributed, the symbols would be in identical places, and you could use atos on that to decode your backtrace.

So I went through all my dependent projects, copied the Build Configuration 'Release' to a new Build Configuration which I named 'ReleaseUnstripped', and in there unchecked 'Deployment Postprocessing', 'Strip Debug Symbols During Copy', 'Strip Linked Product' and 'Dead Code Stripping'. Then when I build that and run atos, it works.


As said, one compelling reason for dsym is that you can strip all you like and just keep the corresponding dsym around. (It even has a UUID that matches the one in the binary so you can make sure you've got the right one).

Now I know. So while I was in there changing all those settings I changed all my 'Debug Information Format' settings to 'DWARF with dSYM File', so I'll be able to use the dSYMs next time and won't need atos.

Just to be clear. You'll still need atos. It's just that atos will look at the executable you point it at, then it will look for the same name with .dSYM appended. If it finds the dSYM, it will load the symbol and source information from that. dSYMs by themselves do very little.




But that doesn't help with a binary you built years ago, stripped, and distributed, unless you also archived the sources and project and build system and Xcode version you built it with, and can rebuild it from scratch and save the pre-stripped binary from that.

Fortunately it was built earlier today.

Thanks for the help.
_______________________________________________
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

References: 
 >How to make atos give symbols? (From: Jerry Krinock <email@hidden>)
 >Re: How to make atos give symbols? (From: Nick Zitzmann <email@hidden>)
 >Re: How to make atos give symbols? (From: Jerry Krinock <email@hidden>)
 >Re: How to make atos give symbols? (From: Chris Espinosa <email@hidden>)
 >Re: How to make atos give symbols? (From: Jerry Krinock <email@hidden>)

  • Prev by Date: Re: GDB Error stepping over strcmp()
  • Next by Date: Re[2]: Xcode 2.5 doesn't install gcc 3.3 to the right place
  • Previous by thread: Re: How to make atos give symbols?
  • Next by thread: Xcode 3.0 syntax color problem
  • Index(es):
    • Date
    • Thread