2013-03-23 14 views
5

http://developer.android.com/tools/sdk/ndk/index.htmlWie static code analyzer in android ndk r8e eingeführt verwenden?

Wie der Link oben schon sagt, Android NDK R8e:

Added statische Code-Analyse für Linux/MacOSX-Hosts. Informationen zur Verwendung des Analysators finden Sie unter CHANGES.HTML.

In CHANGES.HTML:

  • Added statische Code-Analyse für Linux/MacOSX Gastgeber
    1. Für NDK-build, entweder Export NDK_ANALYZE = 1 oder fügen Sie es die Kommando- Linie.
    2. Für Standalone, siehe zB ndk-build, um scan-build mit/path/to/standalone/bin // analyzer zu starten.

Ich habe das NDK-build NDK_ANALYZE 1 = Befehl zu bauen und es baut in Ordnung. Aber wie genau kann ich den Analysator verwenden, um Speicherprobleme zu erkennen? Ich habe keine Dokumentation gefunden.

Antwort

0

Ich habe die folgende Zeile in "Console" von Eclipse beim Erstellen des NDK-Projekts gefunden. Ich denke, es ist die Antwort.

Scan-build: Mit '/opt/android-ndk/toolchains/llvm-3.2/prebuilt/linux-x86_64/bin/armeabi/analyzer' für die statische Analyse

Und in der Konsole endlich zeigt es:

scan-build: 1 Fehler gefunden. scan-build: Führen Sie 'scan-view/tmp/scan-build-2013-03-29-4' aus, um Fehlerberichte zu untersuchen.

Es erkennt grundlegende Fehler wie Division durch Null, nicht Speicherprobleme.

0

Ich bin nicht sicher, NDK_ANALYZE wird helfen, Speicherleck zu erkennen oder nicht. Derzeit verwende ich Eclipse-Plugin cppcheclipse, die here gefunden werden kann. Es verfügt über statische Analyse, um zu überprüfen, ob Ihr Code anfällig für Speicherverlust ist.