for ios crash reports, sufficient drag , drop crash report organizer.
symbolicating iphone app crash reports
but method doesn't work mac osx crash reports.
how can symbolicate mac osx crash report ?
thanks !!
you can use atos command line number app crashed.
heres quick guide:
- create directory working files
- open xcode, select window->organizer, goto archive tab , find version of app experienced crash.
- right click on app archive , select "show in finder"
- right click on .xarchive, select "show contents" , find appname.dsym directory , app , copy them working folder
- copy stack trace working folder
- open terminal , change working folder. ls should show yourapp.app yourapp.app.dsym stacktrace.txt
- open stack trace in textedit. going need find code type header (system architecture - eg. x86-64) , addresses of crash. search through threads find 1 crashed (it "thread 2 crashed") find objects. need 2 addresses (hex numbers) line code line.
once you've got information need run following in terminal:
atos -o yourapp.app/contents/macos/yourapp -arch x86_64 -l [load-address] [address]
for example, heres extract stacktrace:
process: myapp [228] path: /applications/myapp.app/contents/macos/myapp identifier: uk.co.company.app version: 1.0 (1) app item id: 774943227 app external id: 218062633 code type: x86-64 (native) parent process: launchd [154] responsible: myapp [228] user id: 501 date/time: 2013-12-17 10:20:45.816 +0100 os version: mac os x 10.9 (13a603) report version: 11 anonymous uuid: 7aa662b1-7696-a2c5-af56-9d4ba2ce9515 crashed thread: 2 exception type: exc_crash (sigabrt) exception codes: 0x0000000000000000, 0x0000000000000000 <snip> thread 2 crashed: 0 libsystem_kernel.dylib 0x00007fff8b95a866 __pthread_kill + 10 1 libsystem_pthread.dylib 0x00007fff8bf4f35c pthread_kill + 92 2 libsystem_c.dylib 0x00007fff87571bba abort + 125 3 libsystem_malloc.dylib 0x00007fff897ae093 free + 411 4 uk.co.company.app 0x0000000103580606 0x10356e000 + 75270 5 uk.co.company.app 0x00000001035803da 0x10356e000 + 74714 6 com.apple.foundation 0x00007fff8d00970b __nsthread__main__ + 1318 7 libsystem_pthread.dylib 0x00007fff8bf4e899 _pthread_body + 138 8 libsystem_pthread.dylib 0x00007fff8bf4e72a _pthread_start + 137 9 libsystem_pthread.dylib 0x00007fff8bf52fc9 thread_start + 13
i can see "code type" x86_64, thread 2 crashed, , on line 4 code running have addresses need. using information run following:
$ atos -o myapp.app/contents/macos/myapp -arch x86_64 -l 0x10356e000 0x0000000103580606
this returns:
got symbolicator myapp.app/contents/macos/myapp, base address 100000000 obj_free (in myapp) (somefile.c:135)
telling me app crashed @ line 135 of somefile.c
Comments
Post a Comment