Skrip ndk-build membuat project yang menggunakan sistem build berbasis
Make NDK. Tersedia dokumentasi yang lebih spesifik untuk konfigurasi Android.mk dan Application.mk yang digunakan oleh ndk-build.
Internal
Menjalankan skrip ndk-build setara dengan menjalankan perintah berikut:
$GNUMAKE -f <ndk>/build/core/build-local.mk <parameters>
$GNUMAKE mengarah ke GNU Make 3.81 atau yang lebih baru, dan <ndk> mengarah ke direktori penginstalan NDK Anda. Anda dapat menggunakan
informasi ini untuk memanggil ndk-build dari skrip shell lain, atau bahkan membuat file
sendiri.
Memanggil dari command line
Skrip ndk-build berada di direktori penginstalan NDK level teratas. Untuk menjalankannya dari command line, panggil skrip ini selagi berada di atau dalam direktori project aplikasi Anda.
Contoh: 
$ cd <project> $ <ndk>/ndk-build
Dalam contoh ini, <project> mengarah ke direktori utama project Anda, dan <ndk> adalah direktori tempat Anda menginstal NDK.
Opsi
Semua parameter pada ndk-build diteruskan langsung ke perintah GNU make sumber yang menjalankan skrip build NDK. Gabungkan ndk-build dan opsi dalam format ndk-build <option>. Contoh: 
$ ndk-build clean
Opsi berikut tersedia:
- 
    clean
- 
    Menghapus biner yang dibuat sebelumnya.
    Catatan: Di Mac OS X, menjalankan ndk-build cleandengan banyak eksekusi paralel dapat menyebabkan error build yang mencakup pesan berikut:rm: fts_read: No such file or directory Untuk menghindari masalah ini, sebaiknya jangan gunakan pengubah -jNatau memilih nilai yang lebih kecil untukN, misalnya 2.
- 
    V=1
- Meluncurkan build dan menampilkan perintah build.
- 
    -B
- Memaksa pembuatan ulang penuh.
- 
    -B V=1
- Memaksa pembuatan ulang penuh, dan menampilkan perintah build.
- 
    NDK_LOG=1
- Menampilkan pesan log NDK internal (yang digunakan untuk men-debug NDK itu sendiri).
- 
    NDK_DEBUG=1
- Memaksa build yang dapat di-debug (lihat tabel 1).
- 
    NDK_DEBUG=0
- Memaksa build rilis (lihat tabel 1).
- 
    NDK_HOST_32BIT=1
- Selalu menggunakan toolchain dalam mode 32-bit.
- 
    NDK_APPLICATION_MK=<file>
- 
    Membuat build menggunakan file Application.mktertentu yang ditunjuk oleh variabelNDK_APPLICATION_MK.
- 
    -C <project>
- Membuat kode native untuk jalur project yang terletak di <project>. Berguna jika Anda tidak ingin mengubah direktori (cd) ke <project> di terminal.
Build yang dapat di-debug vs build rilis
Gunakan opsi NDK_DEBUG dan, dalam kasus tertentu,
AndroidManifest.xml untuk menentukan build debug atau build rilis,
perilaku terkait pengoptimalan, dan penyertaan simbol. Tabel 1 menunjukkan hasil dari setiap kombinasi setelan yang memungkinkan.
Tabel 1. Hasil kombinasi NDK_DEBUG (command line) dan android:debuggable (manifes).
| Setelan Manifes | NDK_DEBUG=0 | NDK_DEBUG=1 | NDK_DEBUG tidak ditetapkan | 
|---|---|---|---|
| android:debuggable="true" | Debug; Simbol; Dioptimalkan*1 | Debug; Simbol; Tidak dioptimalkan*2 | (sama dengan NDK_DEBUG=1) | 
| android:debuggable="false" | Rilis; Simbol; Dioptimalkan | Rilis; Simbol; Tidak dioptimalkan | Rilis; Tanpa simbol; Dioptimalkan*3 | 
*2: Default untuk menjalankan
ndk-gdb.*3: Mode default.
Catatan: `NDK_DEBUG=0` setara dengan `APP_OPTIM=release`, dan mengompilasi dengan `-O2`. `NDK_DEBUG=1` setara dengan `APP_OPTIM=debug` dalam `Application.mk`, dan mengompilasi dengan `-O0`. Untuk informasi tentang `APP_OPTIM`, lihat Application.mk.
Sintaksis pada command line, misalnya:
$ ndk-build NDK_DEBUG=1
Persyaratan
Anda memerlukan GNU Make 4 untuk menggunakan ndk-build atau NDK secara umum. NDK menyertakan salinan
GNU Make-nya sendiri dan akan menggunakannya kecuali jika Anda telah menetapkan
variabel lingkungan $GNUMAKE untuk mengarah ke make yang tidak sesuai.
Database kompilasi JSON
Di NDK r18 dan yang lebih baru, ndk-build dapat membuat database kompilasi JSON.
Anda dapat menggunakan ndk-build compile_commands.json untuk membuat database
tanpa harus menulis kode, atau ndk-build GEN_COMPILE_COMMANDS_DB=true jika
ingin menyusun dan membuat database sebagai efek samping.
