I am creating a 2D game on Android using OpenGL. I am currently testing and debugging a game on multiple devices. The problem I am facing is a terrible "signal 11" error.
When I play on my Samsung Galaxy Nexus, everything works smoothly, and I can play it for hours without a game throwing any errors. My Nexus is running Android ICS.
Now, when I run it on other devices, I get this signal 11 error. These are the devices that cause the error: - HTC Desire HD (gingerbread cookies) - HTC Desire Z (gingerbread cookies) - HTC Wildfire (gingerbread cookies) - Advent Vega tablet (Vegacomb) - Asus EE Pad Transformer (ice cream sandwich)
I cannot use USB debugging on my Advent Vega, but the other 3 devices that exit this error are being debugged. It seems I need to start my device in order to get additional information about signal 11 error. I was able to root my Galaxy Nexus and my desire for HD.
Since the error always appears at the same moment (when the game just finished loading the textures), I assumed that I can only make one root device to find out the cause of the problem, and then fix it, and test the new version on another device.
At first, I thought it was related to memory management (without freeing up my objects, therefore making a lot of GC requests). Therefore, after several hours of profiling, optimization, testing, etc. I found that this is not a problem. Then I suggested that this has something to do with Thread Safety (one thread is trying to get something from memory where another thread just destroyed the link). But this is also not so.
So now I have an entrenched Desire HD connected to my laptop and I have an Eclipse project open and DDMS is working.
Now, what does logcat say when a game / application crashes?
04-02 13:24:50.561: D/dalvikvm(3526): GC_CONCURRENT freed 739K, 43% free 4225K/7303K, external 1478K/1939K, paused 2ms+4ms 04-02 13:24:50.661: D/dalvikvm(3526): GC_FOR_MALLOC freed 99K, 43% free 4261K/7431K, external 1466K/1939K, paused 29ms 04-02 13:24:50.701: I/DEBUG(3412): debuggerd: 2012-04-02 13:24:50 04-02 13:24:50.701: I/DEBUG(3412): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 04-02 13:24:50.701: I/DEBUG(3412): Build fingerprint: 'vodafone_uk/htc_ace/ace:2.3.5/GRJ90/208029.3:user/release-keys' 04-02 13:24:50.701: I/DEBUG(3412): pid: 3526, tid: 3539 >>> com.more2create.cityisland <<< 04-02 13:24:50.701: I/DEBUG(3412): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0088d410 04-02 13:24:50.701: I/DEBUG(3412): r0 4b89de00 r1 0088d410 r2 00000000 r3 00000000 04-02 13:24:50.701: I/DEBUG(3412): r4 00000000 r5 00000000 r6 00000020 r7 00000001 04-02 13:24:50.701: I/DEBUG(3412): r8 45a98b68 r9 458dbde0 10 0034f598 fp 440b0000 04-02 13:24:50.701: I/DEBUG(3412): ip 806091c8 sp 45a989d0 lr 80602a0c pc afd0d200 cpsr 60000010 04-02 13:24:50.701: I/DEBUG(3412): d0 42a0000000000000 d1 0000000000000000 04-02 13:24:50.701: I/DEBUG(3412): d2 0000000042200000 d3 4220000042a00000 04-02 13:24:50.701: I/DEBUG(3412): d4 000000003df5c2a0 d5 0000000000000000 04-02 13:24:50.701: I/DEBUG(3412): d6 0000000000000101 d7 0000000000000000 04-02 13:24:50.701: I/DEBUG(3412): d8 3f8000003f800000 d9 8000000080000000 04-02 13:24:50.701: I/DEBUG(3412): d10 8000000080000000 d11 3ff0000080000000 04-02 13:24:50.701: I/DEBUG(3412): d12 3f8000003f800000 d13 0000000000000000 04-02 13:24:50.701: I/DEBUG(3412): d14 0000000000000000 d15 0000000000000000 04-02 13:24:50.701: I/DEBUG(3412): d16 000172c000000000 d17 7e37e43c8800759c 04-02 13:24:50.701: I/DEBUG(3412): d18 3fff8def8808b024 d19 465aa3f469f40e1c 04-02 13:24:50.701: I/DEBUG(3412): d20 4008000000000000 d21 3fd99a27ad32ddf5 04-02 13:24:50.701: I/DEBUG(3412): d22 3fd24998d6307188 d23 3fcc7288e957b53b 04-02 13:24:50.701: I/DEBUG(3412): d24 3fc74721cad6b0ed d25 3fc39a09d078c69f 04-02 13:24:50.701: I/DEBUG(3412): d26 0000000000000000 d27 0000000000000000 04-02 13:24:50.701: I/DEBUG(3412): d28 0000000000000000 d29 0000000000000000 04-02 13:24:50.701: I/DEBUG(3412): d30 0000000000000000 d31 0000000000000000 04-02 13:24:50.701: I/DEBUG(3412): scr 60000012 04-02 13:24:50.741: I/DEBUG(3412):
Of course, I searched for it and searched the Internet for possible corrections, but nothing really useful there. People talk about looking in the SO file (in this case libc.so) and finding the line where the application crashes.
Now the problem is that I am starting Windows and do not know how to delve into this problem. I'm just stuck here ...
So my question is actually pretty simple: can someone help me here? Is there any way to delve into this? Can I find out what "# 00 pc 0000d200 / system / lib / libc.so" means?