일단 로그부터 올립니다.

 09-28 11:12:12.845: INFO/DEBUG(31): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
09-28 11:12:12.855: INFO/DEBUG(31): Build fingerprint: 'generic/sdk/generic/:2.2/FRF91/43546:eng/test-keys'
09-28 11:12:12.855: INFO/DEBUG(31): pid: 438, tid: 438  >>> android.app.ImageProc <<<
09-28 11:12:12.865: INFO/DEBUG(31): signal 11 (SIGSEGV), fault addr deadbaad
09-28 11:12:12.865: INFO/DEBUG(31):  r0 00000000  r1 0000000c  r2 00000027  r3 00000000
09-28 11:12:12.875: INFO/DEBUG(31):  r4 00000000  r5 deadbaad  r6 00001728  r7 40000000
09-28 11:12:12.875: INFO/DEBUG(31):  r8 beb36878  r9 4104bcbc  10 0000ce04  fp 4104bcb8
09-28 11:12:12.875: INFO/DEBUG(31):  ip ffffffff  sp beb367e0  lr afd154c5  pc afd11dc4  cpsr 40000030
09-28 11:12:13.015: INFO/DEBUG(31):          #00  pc 00011dc4  /system/lib/libc.so
09-28 11:12:13.015: INFO/DEBUG(31):          #01  pc 0000be1c  /system/lib/libc.so
09-28 11:12:13.015: INFO/DEBUG(31): code around pc:
09-28 11:12:13.025: INFO/DEBUG(31): afd11da4 1c2bd00b 2d00682d e026d1fb 2b0068db
09-28 11:12:13.025: INFO/DEBUG(31): afd11db4 4e17d003 51a02001 4d164798 24002227
09-28 11:12:13.035: INFO/DEBUG(31): afd11dc4 f7fb702a 2106ee14 ef10f7fc 05592380
09-28 11:12:13.035: INFO/DEBUG(31): afd11dd4 6091aa01 1c116054 94012006 eab6f7fc
09-28 11:12:13.044: INFO/DEBUG(31): afd11de4 2200a905 f7fc2002 f7fbeac2 2106ee00
09-28 11:12:13.044: INFO/DEBUG(31): code around lr:
09-28 11:12:13.054: INFO/DEBUG(31): afd154a4 b0834a0d 589c447b 26009001 686768a5
09-28 11:12:13.054: INFO/DEBUG(31): afd154b4 220ce008 2b005eab 1c28d003 47889901
09-28 11:12:13.065: INFO/DEBUG(31): afd154c4 35544306 d5f43f01 2c006824 b003d1ee
09-28 11:12:13.065: INFO/DEBUG(31): afd154d4 bdf01c30 0002ae7c 000000d4 1c0fb5f0
09-28 11:12:13.075: INFO/DEBUG(31): afd154e4 43551c3d a904b087 1c16ac01 604d9004
09-28 11:12:13.075: INFO/DEBUG(31): stack:
09-28 11:12:13.085: INFO/DEBUG(31):     beb367a0  00000015 
09-28 11:12:13.085: INFO/DEBUG(31):     beb367a4  afd1453b  /system/lib/libc.so
09-28 11:12:13.095: INFO/DEBUG(31):     beb367a8  afd405a0  /system/lib/libc.so
09-28 11:12:13.095: INFO/DEBUG(31):     beb367ac  afd4054c  /system/lib/libc.so
09-28 11:12:13.105: INFO/DEBUG(31):     beb367b0  00000000 
09-28 11:12:13.105: INFO/DEBUG(31):     beb367b4  afd154c5  /system/lib/libc.so
09-28 11:12:13.115: INFO/DEBUG(31):     beb367b8  00000080 
09-28 11:12:13.125: INFO/DEBUG(31):     beb367bc  afd1450d  /system/lib/libc.so
09-28 11:12:13.125: INFO/DEBUG(31):     beb367c0  4104bcd0 
09-28 11:12:13.125: INFO/DEBUG(31):     beb367c4  afd40328  /system/lib/libc.so
09-28 11:12:13.135: INFO/DEBUG(31):     beb367c8  00000000 
09-28 11:12:13.135: INFO/DEBUG(31):     beb367cc  00001728 
09-28 11:12:13.135: INFO/DEBUG(31):     beb367d0  40000000  /dev/ashmem/system_properties (deleted)
09-28 11:12:13.135: INFO/DEBUG(31):     beb367d4  afd147ab  /system/lib/libc.so
09-28 11:12:13.145: INFO/DEBUG(31):     beb367d8  df002777 
09-28 11:12:13.145: INFO/DEBUG(31):     beb367dc  e3a070ad 
09-28 11:12:13.145: INFO/DEBUG(31): #00 beb367e0  428d5c39  /data/dalvik-cache/data@app@android.app.ImageProc-1.apk@classes.dex
09-28 11:12:13.145: INFO/DEBUG(31):     beb367e4  afd15e19  /system/lib/libc.so
09-28 11:12:13.145: INFO/DEBUG(31):     beb367e8  afd418dc  /system/lib/libc.so
09-28 11:12:13.145: INFO/DEBUG(31):     beb367ec  afd10510  /system/lib/libc.so
09-28 11:12:13.155: INFO/DEBUG(31):     beb367f0  afd40328  /system/lib/libc.so
09-28 11:12:13.155: INFO/DEBUG(31):     beb367f4  fffffbdf 
09-28 11:12:13.155: INFO/DEBUG(31):     beb367f8  afd40328  /system/lib/libc.so
09-28 11:12:13.155: INFO/DEBUG(31):     beb367fc  afd41724  /system/lib/libc.so
09-28 11:12:13.165: INFO/DEBUG(31):     beb36800  0000a000  [heap]
09-28 11:12:13.165: INFO/DEBUG(31):     beb36804  afd0be21  /system/lib/libc.so
09-28 11:12:13.165: INFO/DEBUG(31): #01 beb36808  afd40328  /system/lib/libc.so
09-28 11:12:13.165: INFO/DEBUG(31):     beb3680c  afd0be21  /system/lib/libc.so
09-28 11:12:13.165: INFO/DEBUG(31):     beb36810  41256bb8  /dev/ashmem/dalvik-LinearAlloc (deleted)
09-28 11:12:13.175: INFO/DEBUG(31):     beb36814  00000374 
09-28 11:12:13.175: INFO/DEBUG(31):     beb36818  0000ce04  [heap]
09-28 11:12:13.185: INFO/DEBUG(31):     beb3681c  afd0be39  /system/lib/libc.so
09-28 11:12:13.185: INFO/DEBUG(31):     beb36820  00000000 
09-28 11:12:13.185: INFO/DEBUG(31):     beb36824  afd103f0  /system/lib/libc.so
09-28 11:12:13.185: INFO/DEBUG(31):     beb36828  000013fc 
09-28 11:12:13.185: INFO/DEBUG(31):     beb3682c  000000dc 
09-28 11:12:13.194: INFO/DEBUG(31):     beb36830  000013fc 
09-28 11:12:13.194: INFO/DEBUG(31):     beb36834  8090688c  /data/data/android.app.ImageProc/lib/libImageProcessing.so
09-28 11:12:13.194: INFO/DEBUG(31):     beb36838  00000007 
09-28 11:12:13.194: INFO/DEBUG(31):     beb3683c  428d6053  /data/dalvik-cache/data@app@android.app.ImageProc-1.apk@classes.dex
09-28 11:12:13.204: INFO/DEBUG(31):     beb36840  4104bcc4 
09-28 11:12:13.204: INFO/DEBUG(31):     beb36844  afd0cd81  /system/lib/libc.so
09-28 11:12:13.215: INFO/DEBUG(31):     beb36848  8090688c  /data/data/android.app.ImageProc/lib/libImageProcessing.so
09-28 11:12:13.215: INFO/DEBUG(31):     beb3684c  809027bb  /data/data/android.app.ImageProc/lib/libImageProcessing.so
09-28 11:12:14.015: DEBUG/Zygote(33): Process 438 terminated by signal (11)

앞서 올렸던 글에 리플달아주신분께서
log를 보고 에러가 난 주소값을 gdb에서 list 때리면 문제가 된 소스가 나온다고 하셔서
gdb에 매달렸는데요-
위에 로그에 나온

09-28 11:12:12.865: INFO/DEBUG(31): signal 11 (SIGSEGV), fault addr deadbaad

를 보고 gdb에서 list *0xdeadbaad 해도
No source file for address 0xdeadbaad. 라고만 나와서요..
위에 로그보고 의심가는 (제가 만든게 libImageProcessing.so 니까, 그 옆에 나와있는 주소같은 것들) 주소들은
다 쳐봤는데 맨 마지막에 나온 809027bb 외에는 다 똑같이 나오더라구요.
맨 마지막 줄 치면 어떤 코드가 나오는데, 그 중에 가운데 있는 줄이

 tIdxList = (int *)malloc(mLTIndex * sizeof(int)); 인데..

그러면 이게 메모리 할당하다가 죽는건지요.. ㅠ

로그를 보고 어떻게 분석해야하는건지 일러주시면 감사하겠습니다.
참고할만한 링크나 서적을 알려주시면 더더욱 감사하구요 ^^;

--------------------------------------------------------------------------------------------------------------------------------------------

음. 그리고 며칠전부터 질문드렸던건데요, 이게 계속 하다보니까 에러나는 위치가 달라지더라구요;;
원래 똑같은 에러가 발생하던 곳보다 더 앞에서 이런 에러가 또 발생하네요. (위에 로그 말하는거예요.)

음.. 지금은 ndk-gdb 를 이용해보려고 하는데요~
android-ndk-r4b/doc/ndk-gdb.txt 보고 따라해서 gdb 프롬프트까지 띄운 상태입니다.

ndk-gdb가 실행되면

warning: Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code.
warning: shared library handler faild to enable breakpoint
0x80901e12 in Java_android_app_ImageProc_InterfaceJNI_MakeLabelTable(
 env = 0xaa50, thiz=0x43e2e9f8)
 at /cygdrive/c/sunmin/workspace/ImageProc/jni/InterfaceJNI.c:206
206   if(pix[0] == jBLACK){
(gdb)

이런 상태인데요..
실행할 때마다 멈추는것도 저 줄 근처에서 조금씩 달라지구요;;
지금 ndk-gdb 띄운 상태가 잘못 된건 아닌지..
그냥 break 걸고 변수 보면서 아무 기본적인 수준의 debugging은 할 줄 아는데요.
break 걸고 continue 하면서 display 나 print 는 다 되는데,
현재 실행하고있는 native code의 함수를 return 하면

Cannot access memory at address 0x0

이라고 뜨면서 죽어버리네요..
다른 함수도 실행하면서 안되는걸 봐야하는건데..
전역변수 포인터에 메모리 할당한 배열에 들어있는 값이 제가 생각했던거랑 완전 다르기도 하구요;;



흐음. 기초도 부족한데 너무 어려운데 뛰어들었나 하는 생각만 자꾸 드는 요즘이네요. ㅠ
읽어주셔서 감사합니다.