Debugowanie NDK z r9 działa na W7 / 64, ale daje mi problemy w XP
Niedawno załadowałem nowe narzędzia dla Androida, SDK 20130717 i NDK r9.
Do tej pory miałem poprzednie wersje, działające i debugujące z poziomu Eclipse w porządku na obu moich systemach, XP i W7 / 64.
Teraz W7 / 64 z nowymi narzędziami działa poprawnie i debuguje moje aplikacje po instalacji nowych narzędzi i zmian w wymaganym środowisku ścieżki.
Działa dobrze, gdy wybieram „Debuguj jako” + „Aplikacja macierzysta Android”.
Jednak XP, mimo że mają dokładną konfigurację pod względem folderów / cygwin itp., Po zainstalowaniu nowych narzędzi i zmianie wymaganej ścieżki env, wygląda na to, że nie może uruchomić ndk-dbg i to utknęło w oczekiwaniu w ostateczności w „Uruchamianie MyApp (1): (100%)”. Dzieje się tak po wybraniu opcji „Debuguj jako” + „Aplikacja macierzysta Android”.
Jakieś wskazówki na temat tego, co może być przyczyną tego? czy jest jakiś znany problem z debugowaniem XP i r9, którego mi brakuje?
dzięki, Christos
*edytować
Próbowałem ręcznie uruchomić ndk-gdb i to jest to, co otrzymuję, wszelkie wskazówki są mile widziane
Zablokować cytat
$ ndk-gdb --start --verbose --force
Ścieżka instalacji Androida NDK: / cygdrive / e / android-ndk-r9
Używanie domyślnego polecenia adb: / cygdrive / e / adt-bundle-windows-x86-20130717 / sdk / platform-tools / adb
Znaleziono wersję ADB: Android Debug Bridge wersja 1.0.31
Używanie flag ADB:
Używanie komendy JDB: /cygdrive/e/Android/Java/jdk1.7.0_21/bin/jdb
Korzystanie z automatycznie wykrytej ścieżki projektu:.
Znaleziono nazwę pakietu: myndkpackage
ABI kierowane przez aplikację: armeabi-v7a
Poziom interfejsu API urządzenia: 17
CPU urządzenia ABI: armeabi-v7a armeabi
Kompatybilne urządzenie ABI: armeabi-v7a
Korzystanie z ustawień gdb init: ./libs/armeabi-v7a/gdb.setup
Używanie prefiksu toolchain: /cygdrive/e/android-ndk-r9/toolchains/arm-linux-androideabi-4.6/prebuilt/windows/bin/arm-linux-androideabi-
Korzystanie z katalogu aplikacji: ./obj/local/armeabi-v7a
Znaleziono flagę debuggable: true
Znaleziono urządzenie gdbserver: / data / data / myndkpackage / lib / gdbserver
Znaleziono katalog danych: '/ data / data / myndkpackage'
Znaleziono pierwszą aktywację uruchamialną: myndkpackage.MainActivity
Uruchamianie działania: myndkpackage / myndkpackage.MainActivity
POLECENIE: powłoka adb_cmd am start -D -n mój_katalog_główny / myndkpackage.MainActivity
Począwszy: Intent {cmp = myndkpackage / .MainActivity}
COMMAND: adb_cmd shell sleep 2
Znaleziono działający PID: 2787
Zabijanie istniejącej sesji debugowania
POLECENIE: powłoka adb_cmd zabija -9 2753
Udało się uruchomić gdbserver.
Ustaw przekierowanie sieci
COMMAND: adb_cmd powłoka run-as myndkpackage lib / gdbserver + debug-socket --attach 2787
POLECENIE: adb_cmd forward tcp: 5039 localfilesystem: / data / data / myndkpackage / debug-socket
Przywiązany; pid = 2787
Słuchanie na gnieździe debugowania w Uniksie
POLECENIE: adb_cmd pull / system / bin / app_process obj / local / armeabi-v7a / app_process
599 KB / s (9588 bajtów w 0,015 s)
Wyciągnięto app_process z urządzenia / emulatora.
POLECENIE: adb_cmd pull / system / bin / linker obj / local / armeabi-v7a / linker
658 KB / s (63244 bajtów w 0,093 s)
Wyciągnął linker z urządzenia / emulatora.
POLECENIE: adb_cmd pull /system/lib/libc.so obj / local / armeabi-v7a / libc.so
744 KB / s (297608 bajtów w 0,390 s)
Wyciągnięto libc.so z urządzenia / emulatora.
Konfiguracja połączenia JDB
COMMAND: adb_cmd forward tcp: 65534 jdwp: 2787
java.io.IOException: niepowodzenie uzgadniania - połączenie przedwcześnie zamknięte
at com.sun.tools.jdi.SocketTransportService.handshake (SocketTransportService.java:136)
at com.sun.tools.jdi.SocketTransportService.attach (SocketTransportService.java:232)
at com.sun.tools.jdi.GenericAttachingConnector.attach (GenericAttachingConnector.java:116)
at com.sun.tools.jdi.SocketAttachingConnector.attach (SocketAttachingConnector.java:90)
w com.sun.tools.example.debug.tty.VMConnection.attachTarget (VMConnection.java:519)
w com.sun.tools.example.debug.tty.VMConnection.open (VMConnection.java:328)
w com.sun.tools.example.debug.tty.Env.init (Env.java:63)
at com.sun.tools.example.debug.tty.TTY.main (TTY.java:1066)
Błąd krytyczny:
Nie można dołączyć do docelowej maszyny wirtualnej.
/ cygdrive / e / android-ndk-r9 / ndk-gdb: linia 742: 4636 Błąd segmentacji $ GDBCLIENT -xnative_path $GDBSETUP
Zablokować cytat