programacion - Android GDB no carga la biblioteca compartida de C++
manual de programacion android pdf (1)
He intentado depurar una biblioteca compartida que escribí en c / c ++ pero no puedo depurarla usando eclipse. Cuando establezco un punto de inflexión nunca se golpea y luego de ejecutar la info sharedlibrary
en gdb, obtengo el siguiente, confirmando que la biblioteca no está allí (llamada libtest-java.so)
From To Syms Read Shared Object Library
No /system/bin/linker
0x40093070 0x400c36f8 Yes /Users/jpuig/Development/test/git/test_lib-protoype/java/test_Android/obj/local/armeabi/libc.so
No libstdc++.so
No libm.so
No liblog.so
No libcutils.so
No libgccdemangle.so
No libcorkscrew.so
No libutils.so
No libbinder.so
No libhardware.so
No libmemtrack.so
No libz.so
No libandroidfw.so
No libexpat.so
No libstlport.so
No libnativehelper.so
No libnetutils.so
No libsync.so
No libui.so
No libGLES_trace.so
No libEGL.so
No libGLESv2.so
No libgui.so
No libinput.so
No libcamera_metadata.so
No libcamera_client.so
No libpng.so
No libft2.so
No libjpeg.so
No libgabi++.so
No libicuuc.so
No libicui18n.so
No libskia.so
No libsqlite.so
No libGLESv1_CM.so
No libETC1.so
No libwpa_client.so
No libhardware_legacy.so
No libselinux.so
No libsonivox.so
No libcrypto.so
No libssl.so
No libstagefright_foundation.so
No libspeexresampler.so
No libaudioutils.so
No libmedia.so
No libusbhost.so
No libharfbuzz_ng.so
No libLLVM.so
No libbcinfo.so
No libbcc.so
No libRS.so
No libRScpp.so
No libhwui.so
No libandroid_runtime.so
No libdvm.so
No libjavacore.so
No memtrack.msm8974.so
No libdrmframework.so
No libdrmframework_jni.so
No libconnectivitymanager.so
No libstagefright_omx.so
No libstagefright_yuv.so
No libvorbisidec.so
No libpowermanager.so
No libstagefright_enc_common.so
No libstagefright_avc_common.so
No libstagefright.so
No libmtp.so
No libexif.so
No libstagefright_amrnb_common.so
No libmedia_jni.so
No libexif_jni.so
No libcommon_time_client.so
No libnbaio.so
No libeffects.so
No libaudioflinger.so
No libvideoeditor_osal.so
No libvideoeditor_videofilters.so
No libvideoeditorplayer.so
No libvideoeditor_core.so
No libvideoeditor_jni.so
No librs_jni.so
No libandroid.so
No libwilhelm.so
No libOpenSLES.so
No libjnigraphics.so
No libwebviewchromium.so
No libwebviewchromium_plat_support.so
No libjavacrypto.so
No libgsl.so
No libadreno_utils.so
No libEGL_adreno.so
No libGLESv1_CM_adreno.so
No libGLESv2_adreno.so
No eglsubAndroid.so
No libsc-a3xx.so
No libqdutils.so
No libmemalloc.so
No gralloc.msm8974.so
0x77dbd638 0x77eb97b8 No /Users/jpuig/Development/test/git/test_lib-protoype/java/test_Android/obj/local/armeabi/libtest-java.so
¿Hay alguna manera de cargar esta biblioteca manualmente o algo así? en el archivo make utilizo lo siguiente:
incluye $ (CLEAR_VARS)
######
LOCAL_CPPFLAGS += -D DEBUG=1 -D NDK_DEBUG=1
LOCAL_CFLAGS += -D DEBUG=1 -D NDK_DEBUG=1
APP_OPTIM := debug
APP_CFLAG := -g -ggdb -O0
######
¡Muchas gracias por su tiempo!
Me las arreglé para arreglarlo!
Estaba cargando la biblioteca en otra clase y mi MainActivity estaba llamando cuando se presionó el botón, por lo tanto, cuando GDB estaba listo no había bibliotecas cargadas ... pensé que GDB tomaría la nueva biblioteca durante el tiempo de ejecución, por lo que cargar la biblioteca Acabo de agregar las siguientes líneas en el constructor estático de la primera clase llamada:
static {
System.loadLibrary("test-java");
}