Debuggen von Android NDK C / C ++ - Code in Eclipse - Haltepunkte werden nicht erreicht

Ich habe das Android SDK Bundle für Linux und Android NDK heruntergeladen. ADT wurde installiert, ich habe CDT installiert.

Ich habe ein Android-Projekt erstellt und native Unterstützung (jni) hinzugefügt. Dann habe ich native Funktionen in Java-Code geschrieben, die in C ++ exportiert werden. In c ++ habe ich diese Funktion definiert.

Java-Code:

static {
    System.loadLibrary("test");
}

private native String get_text_from_cpp();

c ++ Code (h):

extern "C"{
   JNIEXPORT jstring JNICALL Java_com_example_test_MainActivity_get_1text_1from_1cpp(JNIEnv *, jobject);
}

c ++ Code (cpp):

JNIEXPORT jstring JNICALL Java_com_example_test_MainActivity_get_1text_1from_1cpp(JNIEnv * env, jobject){
    return env->NewStringUTF( "hello from C++" );
}

Code funktioniert ohne Fehler. Aber wenn ich einen Haltepunkt in C ++ setze, wird er nicht getroffen.

build-nkd NDK_DEBUG = 1 - sind enthalten

Ich habe diese Anweisungen befolgthttp://tools.android.com/recent/usingthendkplugin

Android.mk in jni / has LOCAL_CFLAGS: = -g

Ich habe sehr viele Informationen gelesen, aber ich konnte Eclipse nicht anpassen. Bitte helfen Sie jemandem.

PS: Es tut mir leid, dass mein Englisch nicht meine Muttersprache ist. Ich habe Schwierigkeiten beim Schreiben.

Hinzufügen: Auch während des Debuggens in der Konsole wird Folgendes angezeigt: "Warnung: Shared Library-Symbole für 95 Bibliotheken konnten nicht geladen werden, z. B. / system / bin / linker. Verwenden Sie den Befehl" info sharedlibrary ", um die vollständige Liste anzuzeigen. Benötigen Sie" set solib- search-path "oder" set sysroot "? Warnung: Dynamische Linker-Haltepunktfunktion kann nicht gefunden werden. GDB versucht es möglicherweise erneut. In der Zwischenzeit ist es wahrscheinlich, dass GDB nicht in der Lage ist, Shared Library-Initialisierer zu debuggen oder ausstehende Haltepunkte nach dlopen () aufzulösen."

Antworten auf die Frage(6)

Ihre Antwort auf die Frage