iOS crash reports: atos not working as expected

A simpler alternative: you can use the atos -l flag to make it do the maths for you.

Say you’ve got the following line in your crash log that you want to symbolicate:

5   MyApp                   0x0044e89a 0x29000 + 4348058

The first hex number is the stack address, and the second hex number is the load address. You can ignore the last number. You don’t need to worry about slide addresses either.

To symbolicate, do the following:

atos -o MyApp.app/MyApp -arch armv7 -l 0x29000 0x0044e89a

If you can’t find your MyApp.app/MyApp file, rename your ‘.ipa’ file to a ‘.zip’, unzip it, and it’ll be in the Payload folder.

And if you’re not sure which architecture to use (for example, armv7 or armv7s), scroll to the ‘Binary Images’ part of the crash file and you can find it in there.

Cheers

Leave a Comment