Usando android-NDK-R7b/samples/Jni-hola como punto de depuración de partida, he construido el jni conandroide NDK-BGF no puede cargar símbolos
NDK-build V = 1 NDK_DEBUG = 1
rm -f ./libs/armeabi/lib*.so ./libs/armeabi-v7a/lib*.so ./libs/x86/lib*.so
rm -f ./libs/armeabi/gdbserver ./libs/armeabi-v7a/gdbserver ./libs/x86/gdbserver
rm -f ./libs/armeabi/gdb.setup ./libs/armeabi-v7a/gdb.setup ./libs/x86/gdb.setup
Gdbserver : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver
mkdir -p ./libs/armeabi
install -p /cygdrive/c/Users/pcarreir/android-ndk-r7b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/gdbserver ./libs/armeabi/gdbserver
Gdbsetup : libs/armeabi/gdb.setup
mkdir -p ./libs/armeabi
/cygdrive/c/Users/pcarreir/android-ndk-r7b/prebuilt/windows/bin/echo "set solib-search-path ./obj/local/armeabi" > ./libs/armeabi/gdb.setup
/cygdrive/c/Users/pcarreir/android-ndk-r7b/prebuilt/windows/bin/echo "directory C:/Users/pcarreir/android-ndk-r7b/platforms/android-8/arch-arm/usr/include jni C:/Users/pcarreir/android-ndk-r7b/sources/cxx-stl/system" >> ./libs/armeabi/gdb.setup
Cygwin : Generating dependency file converter script
mkdir -p obj/
mount | awk -f /cygdrive/c/Users/pcarreir/android-ndk-r7b/build/awk/gen-cygwin-deps-converter.awk > obj/convert-dependencies.sh && chmod +x obj/convert-dependencies.sh
Compile thumb : hello-jni <= hello-jni.c
/cygdrive/c/Users/pcarreir/android-ndk-r7b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc -MMD -MP -MF ./obj/local/armeabi/objs-debug/hello-jni/hello-jni.o.d.org -fpic -ffunction-sections -funwind-tables -fstack-protector -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -Wno-psabi -march=armv5te -mtune=xscale -msoft-float -mthumb -Os -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -Ijni -DANDROID -Wa,--noexecstack -O0 -g -IC:/Users/pcarreir/android-ndk-r7b/platforms/android-8/arch-arm/usr/include -c jni/hello-jni.c -o ./obj/local/armeabi/objs-debug/hello-jni/hello-jni.o && ./obj/convert-dependencies.sh ./obj/local/armeabi/objs-debug/hello-jni/hello-jni.o.d
SharedLibrary : libhello-jni.so
/cygdrive/c/Users/pcarreir/android-ndk-r7b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-g++ -Wl,-soname,libhello-jni.so -shared --sysroot=C:/Users/pcarreir/android-ndk-r7b/platforms/android-8/arch-arm ./obj/local/armeabi/objs-debug/hello-jni/hello-jni.o C:/Users/pcarreir/android-ndk-r7b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/../lib/gcc/arm-linux-androideabi/4.4.3/libgcc.a -Wl,--no-undefined -Wl,-z,noexecstack -lc -lm -o obj/local/armeabi/libhello-jni.so
Install : libhello-jni.so => libs/armeabi/libhello-jni.so
mkdir -p ./libs/armeabi
install -p ./obj/local/armeabi/libhello-jni.so ./libs/armeabi/libhello-jni.so
/cygdrive/c/Users/pcarreir/android-ndk-r7b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-strip --strip-unneeded ./libs/armeabi/libhello-jni.so
Ahora comienzo el proceso de depuración. 1. Arranco un emulador 2. Depuro la aplicación dentro de Eclipse. 3. Me aseguro de que estoy en el directorio hello-JNI 4. entro NDK-BGF --verbose
He mirado en otros mensajes sobre el tema y la salida NDK-BGF siempre parece terminar con algo que se parece a la siguiente
warning: shared library handler failed to enable breakpoint
0xafd0c51c in epoll_wait() from /home/zayac/code/android-ndk-r5/samples/hello-jni2/obj/local/armeabi/libc.so
parece que ya está listo para ir con el texto "epoll_wait() ...".
Cuando ejecuto ndk-gdb --verbose Nunca veo ese texto. Acabo de recibir el aviso de waring y (gdb). Aquí está la salida ...
Android NDK installation path: /cygdrive/c/Users/pcarreir/android-ndk-r7b
Using default adb command: /cygdrive/c/Program Files (x86)/Android/android-sdk/platform-tools/adb
ADB version found: Android Debug Bridge version 1.0.29
Using ADB flags:
Using auto-detected project path: .
Found package name: com.example.hellojni
ABIs targetted by application: armeabi
Device API Level: 10
Device CPU ABI: armeabi
Compatible device ABI: armeabi
Found debuggable flag: true
Found device gdbserver: /data/data/com.example.hellojni/lib/gdbserver
Using gdb setup init: ./libs/armeabi/gdb.setup
Using toolchain prefix: /cygdrive/c/Users/pcarreir/android-ndk-r7b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-
Using app out directory: ./obj/local/armeabi
Found data directory: '/data/data/com.example.hellojni'
Found running PID: 7806
Launched gdbserver succesfully.
Setup network redirection
## COMMAND: /cygdrive/c/Program Files (x86)/Android/android-sdk/platform-tools/adb shell run-as com.example.hellojni lib/gdbserver +debug-socket --attach 7806
## COMMAND: /cygdrive/c/Program Files (x86)/Android/android-sdk/platform-tools/adb forward tcp:5039 localfilesystem:/data/data/com.example.hellojni/debug-socket
Attached; pid = 7806
## COMMAND: /cygdrive/c/Program Files (x86)/Android/android-sdk/platform-tools/adb pull /system/bin/app_process obj/local/armeabi/app_process
Listening on sockaddr socket debug-socket
19 KB/s (5660 bytes in 0.284s)
Pulled app_process from device/emulator.
## COMMAND: /cygdrive/c/Program Files (x86)/Android/android-sdk/platform-tools/adb pull /system/lib/libc.so obj/local/armeabi/libc.so
56 KB/s (273868 bytes in 4.730s)
Pulled libc.so from device/emulator.
GNU gdb 6.6
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "--host=i586-mingw32msvc --target=arm-elf-linux".
(no debugging symbols found)
Error while mapping shared library sections:
/system/bin/linker: No such file or directory.
Error while mapping shared library sections:
libc.so: No such file or directory.
Error while mapping shared library sections:
libstdc++.so: No such file or directory.
Error while mapping shared library sections:
libm.so: No such file or directory.
Error while mapping shared library sections:
liblog.so: No such file or directory.
Error while mapping shared library sections:
libcutils.so: No such file or directory.
Error while mapping shared library sections:
libz.so: No such file or directory.
Error while mapping shared library sections:
libutils.so: No such file or directory.
Error while mapping shared library sections:
libbinder.so: No such file or directory.
Error while mapping shared library sections:
libexpat.so: No such file or directory.
Error while mapping shared library sections:
libcrypto.so: No such file or directory.
Error while mapping shared library sections:
libicuuc.so: No such file or directory.
Error while mapping shared library sections:
libicui18n.so: No such file or directory.
Error while mapping shared library sections:
libsqlite.so: No such file or directory.
Error while mapping shared library sections:
libssl.so: No such file or directory.
Error while mapping shared library sections:
libnativehelper.so: No such file or directory.
Error while mapping shared library sections:
libnetutils.so: No such file or directory.
Error while mapping shared library sections:
libEGL.so: No such file or directory.
Error while mapping shared library sections:
libwpa_client.so: No such file or directory.
Error while mapping shared library sections:
libhardware_legacy.so: No such file or directory.
Error while mapping shared library sections:
libpixelflinger.so: No such file or directory.
Error while mapping shared library sections:
libhardware.so: No such file or directory.
Error while mapping shared library sections:
libui.so: No such file or directory.
Error while mapping shared library sections:
libgui.so: No such file or directory.
Error while mapping shared library sections:
libsurfaceflinger_client.so: No such file or directory.
Error while mapping shared library sections:
libcamera_client.so: No such file or directory.
Error while mapping shared library sections:
libemoji.so: No such file or directory.
Error while mapping shared library sections:
libjpeg.so: No such file or directory.
Error while mapping shared library sections:
libskia.so: No such file or directory.
Error while mapping shared library sections:
libGLESv1_CM.so: No such file or directory.
Error while mapping shared library sections:
libskiagl.so: No such file or directory.
Error while mapping shared library sections:
libdvm.so: No such file or directory.
Error while mapping shared library sections:
libGLESv2.so: No such file or directory.
Error while mapping shared library sections:
libETC1.so: No such file or directory.
Error while mapping shared library sections:
libsonivox.so: No such file or directory.
Error while mapping shared library sections:
libmedia.so: No such file or directory.
Error while mapping shared library sections:
libnfc_ndef.so: No such file or directory.
Error while mapping shared library sections:
libandroid_runtime.so: No such file or directory.
Error while mapping shared library sections:
libvorbisidec.so: No such file or directory.
Error while mapping shared library sections:
libstagefright_amrnb_common.so: No such file or directory.
Error while mapping shared library sections:
libstagefright_enc_common.so: No such file or directory.
Error while mapping shared library sections:
libstagefright_avc_common.so: No such file or directory.
Error while mapping shared library sections:
libstagefright_foundation.so: No such file or directory.
Error while mapping shared library sections:
libstagefright_color_conversion.so: No such file or directory.
Error while mapping shared library sections:
libstagefright.so: No such file or directory.
Error while mapping shared library sections:
libmedia_jni.so: No such file or directory.
Error while 0xafd0c738 in ??()
gdb: Unable to get location for thread creation breakpoint: requested event is not supported
mapping shared library sections:
libexif.so: No such file or directory.
Error while mapping shared library sections:
libsoundpool.so: No such file or directory.
Error while mapping shared library sections:
libstlport.so: No such file or directory.
Error while mapping shared library sections:
libwebcore.so: No such file or directory.
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 failed to enable breakpoint
(gdb)
Cuando entro en un comando gdb como lista, consigo
se carga (BGF) No tabla de símbolos. Use el comando "archivo".
¡Cualquier ayuda sería genial!