Android GDB не загружает общую библиотеку c ++

Я пытался отладить разделяемую библиотеку, которую я написал на c / c ++, но я не могу отладить ее с помощью eclipse. Когда я устанавливаю точку останова никогда не ударил и после выполнения info sharedlibrary в gdb я получил следующее, подтвердив, что библиотеки там нет (она называется 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

Есть ли способ загрузить эту библиотеку вручную или что-то ?? в файле make я использую следующее:

включает $ (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
######

Большое спасибо за ваше время!

2

Решение

Мне удалось это исправить!

Я загружал библиотеку в другой класс, и мой MainActivity вызывал ее при нажатии кнопки, поэтому, когда GDB был готов, библиотеки не были загружены … Я думал, что GDB подхватит новую библиотеку во время выполнения, поэтому, чтобы загрузить библиотеку Я только что добавил следующие строки в статический конструктор первого вызванного класса:

static {
System.loadLibrary("test-java");
}
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]