Skrypt ndk-build tworzy projekty wykorzystujące kompilację opartą na modelu NDK
systemu. Istnieje bardziej szczegółowa dokumentacja
Android.mk i
Użyta konfiguracja Application.mk
autor: ndk-build.
Wewnętrzne
Uruchomienie skryptu ndk-build jest równoważne uruchomieniu następującego polecenia:
$GNUMAKE -f <ndk>/build/core/build-local.mk <parameters>
$GNUMAKE wskazuje GNU Make 3.81 lub nowszą wersję oraz
<ndk> wskazuje katalog instalacyjny NDK. Za pomocą
te informacje do wywołania polecenia ndk-build za pomocą innych skryptów powłoki, a nawet własnych
tworzyć pliki.
Wywołaj z wiersza poleceń
Skrypt ndk-build znajduje się w katalogu instalacyjnym NDK najwyższego poziomu. Aby go uruchomić:
z wiersza poleceń, wywołaj go w katalogu projektu aplikacji lub pod nim.
Na przykład: 
$ cd <project> $ <ndk>/ndk-build
W tym przykładzie <project> wskazuje
katalogu głównego projektu, a <ndk> to katalog, w którym
Pakiet NDK został zainstalowany.
Opcje
Wszystkie parametry do polecenia ndk-build są przekazywane bezpośrednio do bazy GNU make
uruchamiające skrypty kompilacji NDK. Połącz: ndk-build i
w formacie ndk-build <option>. Na przykład: 
$ ndk-build clean
Są tu dostępne następujące ustawienia:
- 
    clean
- 
    Usuń wcześniej wygenerowane pliki binarne.
    Uwaga: w systemie Mac OS X: ndk-build cleanz duża liczba wykonań równoległych może spowodować błąd kompilacji, który zawiera następujący komunikat:rm: fts_read: No such file or directory Aby uniknąć tego problemu, nie używaj: -jNlub wybór mniejszej wartości parametruN, np. 2.
- 
    V=1
- uruchamiać i wyświetlać polecenia kompilacji;
- 
    -B
- Wymuś pełną odbudowę.
- 
    -B V=1
- Wymuś pełną przebudowę i wyświetl polecenia kompilacji.
- 
    NDK_LOG=1
- Wyświetl komunikaty wewnętrznego dziennika NDK (używane do debugowania samego NDK).
- 
    NDK_DEBUG=1
- Wymuś kompilację możliwą do debugowania (patrz tabela 1).
- 
    NDK_DEBUG=0
- Wymuś kompilację wersji (patrz tabela 1).
- 
    NDK_HOST_32BIT=1
- Zawsze używaj łańcucha narzędzi w trybie 32-bitowym.
- 
    NDK_APPLICATION_MK=<file>
- 
    Kompiluj przy użyciu konkretnego pliku Application.mkwskazywanego przez kluczNDK_APPLICATION_MK.
- 
    -C <project>
- 
    Utwórz kod natywny dla ścieżki projektu znajdującej się pod adresem
    <project>Przydatny, jeśli nie chceszcddo terminala.
Kompilacje do debugowania a kompilacje do wersji
Użyj opcji NDK_DEBUG, a w niektórych przypadkach:
AndroidManifest.xml, aby określić kompilację do debugowania lub wersji;
zachowań związanych z optymalizacją
i uwzględnienia symboli. Tabela 1 przedstawia
dla każdej możliwej kombinacji ustawień.
Tabela 1. Wyniki funkcji NDK_DEBUG (wiersz poleceń) i
Kombinacje: android:debuggable (plik manifestu).
| Ustawienie pliku manifestu | NDK_DEBUG=0 | NDK_DEBUG=1 | Nie określono NDK_DEBUG | 
|---|---|---|---|
| android:debuggable="true" | debugowanie; symbole; Zoptymalizowana*1 | debugowanie; symbole; Bez optymalizacji*2 | (tak samo jak NDK_DEBUG=1) | 
| android:debuggable="false" | Wydanie; symbole; Zoptymalizowany | Wydanie; symbole; Brak optymalizacji | Wydanie; Bez symboli; Zoptymalizowana*3 | 
*2: wartość domyślna w przypadku uruchamiania
ndk-gdb.*3: tryb domyślny.
Uwaga: „NDK_DEBUG=0” jest odpowiednikiem funkcji `APP_OPTIM=release` i kompiluje się z wartością -O2. „NDK_DEBUG=1” jest odpowiednikiem funkcji `APP_OPTIM=debug` w `Application.mk` i kompiluje się z `-O0`. Więcej informacji o `APP_OPTIM`: Plik Application.mk.
Składnia wiersza poleceń:
$ ndk-build NDK_DEBUG=1
Wymagania
Do korzystania z programu ndk-build lub programu NDK potrzebujesz programu GNU Make 4. Do NDK należą:
mieć własną kopię programu GNU Make. Będzie jej używać, chyba że ustawisz $GNUMAKE
zmienną środowiskową wskazującą na nieodpowiednią markę.
Bazy danych kompilacji JSON
W NDK r18 i nowszych wersjach ndk-build może wygenerować Baza danych JSON.
Do wygenerowania bazy danych możesz użyć polecenia ndk-build compile_commands.json
bez tworzenia kodu lub ndk-build GEN_COMPILE_COMMANDS_DB=true, jeśli
dla których chcesz stworzyć i wygenerować bazę danych jako efekt uboczny.
