2012-03-22 12 views
5

लोड करने के लिए उपयोग करना विफल रहता है android-NDK-r7b/नमूने /, मैंएंड्रॉयड NDK-gdb प्रतीकों

NDK-निर्माण वी = 1 NDK_DEBUG = 1

साथ JNI बनाया डीबगिंग प्रारंभिक बिंदु के रूप हैलो-JNI
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 

अब मैं डिबगिंग प्रक्रिया शुरू करता हूं। 1. मैं एक एमुलेटर शुरू करता हूं 2. मैं ग्रहण के भीतर आवेदन डीबग करता हूं। 3. मुझे यकीन है कि मैं हैलो-JNI निर्देशिका 4. मैं NDK-gdb दर्ज --verbose

मैं इस विषय पर अन्य पदों और NDK-gdb उत्पादन हमेशा लगता है देखा है में हूँ कर निम्नलिखित

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 

ऐसा लगता है कि यह "epoll_wait() ..." पाठ के साथ जाने के लिए तैयार है।

जब मैं ndk-gdb --verbose चलाता हूं तो मैं उस पाठ को कभी नहीं देखता। मैं सिर्फ waring और (gdb) संकेत मिलता है। यहाँ उत्पादन ...

 
    
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) 
 

जब मैं सूची की तरह एक gdb आदेश दर्ज है, मैं

(gdb) कोई प्रतीक तालिका भरी हुई है मिलता है। "फाइल" कमांड का प्रयोग करें।

कोई भी मदद महान होगी!

उत्तर

3

मुझे एक ही समस्या थी क्योंकि libs/armeabi/gdb.setup में सीआर (सीआरएलएफ) वर्ण थे। विकास होस्ट (प्रोजेक्ट निर्देशिका) पर उन्हें हटाने के बाद यह फिर से इंस्टॉल किए बिना काम किया।

gdb.setup ndk-build द्वारा लिखा गया प्रतीत होता है जो विंडोज़ पर सीआर वर्ण (लिनक्स पर नहीं) पेश करता है।

संबंधित मुद्दे