Reputation: 2747
I have a problem with executing the NDK stack trace tool on Windows. Probably jus a pretty stupid mistake, so here is what I try:
...\android-ndk-r8d\ndk-stack.exe -sym ".../JNITest/obj/local/x86/" -dump ".../crash.txt"
The message I get is the following:
********** Crash dump: **********
...
Stack frame #00 eip: 30303030: Unable to open symbol file .../JNITest/obj/local/x86//☺. Error (123): Unknown error
So there is an .so file in this folder that should contain symbols (BTW: how can I check if that is the case?)
Upvotes: 2
Views: 2297
Reputation: 5822
I had the same crash of ndk-stack.exe when using Android NDK Release 9, 64-bit on Windows 7. Updated to a newer NDK version, Release 9c, 64-bit, and the problem is gone. Apparently a bug in earlier releases of NDK.
Greg
Upvotes: 0
Reputation: 11
When you build the native library with ndk-build, it creates an .so
file with all debug information, usually in the directory <proj>/obj/local/armeabi
, and after that installs this file into <proj>/lib/armeabi
by stripping off the debug symbols. The latter is packed into the APK.
armeabi above is used most often because most Android devices out there use ARM CPU. Your post refers to x86 subdirectory. Did you really use an Intel-powered device for this project? Did you build your native library for x86? If you did, can you find this file in your <proj>\obj\local\x86
directory?
Upvotes: 1