• 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
"No line number information available for address 0xXXXXX"
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

"No line number information available for address 0xXXXXX"


  • Subject: "No line number information available for address 0xXXXXX"
  • From: Jerry Krinock <email@hidden>
  • Date: Tue, 31 Mar 2009 11:35:29 -0700

In my app's Xcode project, I have set the Release build to strip the product and Generate Debug Symbols in format DWARF with dSYM file. And I believe that my shipping script dutifully copies the .dSYM file for the main executable and all frameworks to an archive along with the app during the final build.

When I get a crash report from a user, I try Joakim Johansson's dSymbolizer, and if that doesn't work I try my manual procedure with gdb [1].

It works about 50% the time. The other 50% the time, dSymbolizer "just doesn't work" and gdb tells me:

   No line number information available for address 0xXXXXXX

Since, fortunately, I don't get crash reports very often, I'm wondering others if others get a higher than 50% success rate, and if so what I can do to improve my success rate.

Is 50% success rate typical for Cocoa applications?

What are the most likely causes of failure?  Possible responses:

  a) It always works for me.  Your Xcode settings or script must be
       screwed up.
  b) This is magic and you're lucky to get whatever you get.
  c) You can't get information in case xxxxxxxxx.

Possibilities...

When I give gdb an address and it tells me "No information", can I come back and say "Well, OK, then give me all of the addresses for the symbols that you ^do^ have. Look, .dSYM files are typically a few hundred KB. Certainly there must be some useful information in there!

Is there any way to read out the UUIDs of the Universal executable, so I can verify them against the UUIDs in the .dSYM's Info.plist?

Thanks,

Jerry Krinock


[1] My Manual Symbolizing Procedure

0) Provide both the crashing .app and the relevant.dSYM files in the same folder.
1) Open a Terminal window and enter "gdb" with no options, unless your crash report is from a different architecture. Then, you must make sure you use the correct -arch flag. Example, if the crash occurred on a PowerPC and you are not running now on a PowerPC: 'gdb -arch ppc'.
2) Enter the command 'set sharedlibrary preload-libraries no'.
3) Enter the command 'cd path/to/parent/directory/containing/the/.app'.
4) Load your binary with the 'file' command.
5) Look at the crash report and find a line in the call stack that you're interested in, then type
info line *0xSOME_ADDRESS
For example if the crash report has the following line which you're interested in:
12 com.myCompany.MyApp 0x0002ef5f 0x1000 + 254908
Enter the command:
info line *0x0002ef5f
6) Hit 'return' and hope that it works!


_______________________________________________
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


  • Follow-Ups:
    • Re: "No line number information available for address 0xXXXXX"
      • From: Shawn Erickson <email@hidden>
  • Prev by Date: Re: #include <net/if_dl.h> deadlocks Xcode
  • Next by Date: Setting fixed height of NSTextView in IB
  • Previous by thread: Re: #include <net/if_dl.h> deadlocks Xcode
  • Next by thread: Re: "No line number information available for address 0xXXXXX"
  • Index(es):
    • Date
    • Thread