Android Developers
Essentials
  • Modern Android
  • Quickly bring your app to life with less code, using a modern declarative approach to UI, and the simplicity of Kotlin.
  • Explore Modern Android
  • Adopt Compose for teams
  • Get started
  • Start by creating your first app. Go deeper with our training courses or explore app development on your own.
  • Hello world
  • Training courses
  • Tutorials
  • Kotlin for Android
  • Monetization with Play
  • Extend by device
  • Build apps that give your users seamless experiences from phones to tablets, watches, and more.
  • Tablets and foldables
  • Wear OS
  • Android for Cars
  • Android TV
  • ChromeOS
  • Cross-device SDK
  • Build by category
  • Learn to build for your use case by following Google's prescriptive and opinionated guidance.
  • Games
  • Media apps
  • Health & Fitness
  • Enterprise apps
  • Get the latest
  • Stay in touch with the latest releases throughout the year, join our preview programs, and give us your feedback.
  • Platform releases
  • Android Studio preview
  • Jetpack & Compose libraries
  • Wear OS preview
  • Privacy Sandbox
Design & Plan
  • Kits & more
  • Get one of our Figma kits for Android, Material Design, or Wear OS, and start designing your app's UI today.
  • Go to Android & Material kits
  • Go to Wear OS kits
  • UI Design
  • Design a beautiful user interface using Android best practices.
  • Design for Android
  • Mobile
  • Large screens
  • Wear OS
  • TV
  • Architecture
  • Design robust, testable, and maintainable app logic and services.
  • Introduction
  • Libraries
  • Navigation
  • Modularization
  • Testing
  • Quality
  • Plan for app quality and align with Play store guidelines.
  • Overview
  • Core value
  • User experience
  • Technical quality
  • Privacy & security
  • Build for Billions
  • Create the best experience for entry-level devices
  • Overview
  • About new markets
  • Android (Go edition)
Develop Google Play
  • English
  • Bahasa Indonesia
  • Deutsch
  • Español
  • Español – América Latina
  • Français
  • Italiano
  • Português – Brasil
  • Tiếng Việt
  • Türkçe
  • Русский
  • العربيّة
  • ภาษาไทย
  • 中文 – 简体
  • 中文 – 繁體
  • 日本語
  • 한국어
  • NDK
Overview Downloads Samples Guides Reference
Android Developers
  • Essentials
    • More
  • Design & Plan
    • More
  • Develop
    • Overview
    • Downloads
    • Samples
    • Guides
    • Reference
  • Google Play
  • Introduction
  • Get started
  • Concepts
  • JNI tips
  • Common problems and solutions
  • Advice for middleware vendors
  • Build your project
  • Introduction
  • ndk-build
    • The ndk-build script
    • Android.mk
    • Application.mk
    • Use prebuilt libraries
  • CMake
  • Use the NDK with other build systems
  • Integrate the NDK into your own build system
  • Standalone toolchains
  • Architectures and CPUs
  • Introduction
  • Android ABIs
  • CPU features
  • Neon support
  • Writing C/C++ Code
  • Introduction
  • Android SDK version properties
  • C++ support
  • Native APIs
  • Debug and profile
  • Introduction
  • Debug with Android Studio
  • ndk-gdb
  • ndk-stack
  • Native tracing
  • Order Files
  • Profile-guided Optimization
  • Simpleperf
  • Wrap shell script
  • GLES layers
  • Memory error debugging and mitigation
  • Introduction
  • Address Sanitizer
  • HWAddress Sanitizer
  • Arm Memory Tagging Extension
  • GWP-ASan
  • High-performance audio
  • Introduction
  • Audio latency
  • Sampling audio
  • AAudio
  • OpenSL ES
    • Overview
    • Get started
    • OpenSL ES for Android
    • Android extensions
    • OpenSL ES programming notes
  • Native MIDI API
  • Additional resources
  • Vulkan
  • Introduction
  • Get started
  • Design guidelines
  • Shader compilers
  • Validation layers
  • Wide color support
  • Extensions
  • Android Baseline profile
  • Machine learning
  • Neural Networks API
  • Images
  • Image decoder
  • Modern Android
  • Explore Modern Android
  • Adopt Compose for teams
  • Get started
  • Hello world
  • Training courses
  • Tutorials
  • Kotlin for Android
  • Monetization with Play
  • Extend by device
  • Tablets and foldables
  • Wear OS
  • Android for Cars
  • Android TV
  • ChromeOS
  • Cross-device SDK
  • Build by category
  • Games
  • Media apps
  • Health & Fitness
  • Enterprise apps
  • Get the latest
  • Platform releases
  • Android Studio preview
  • Jetpack & Compose libraries
  • Wear OS preview
  • Privacy Sandbox
  • Kits & more
  • Go to Android & Material kits
  • Go to Wear OS kits
  • UI Design
  • Design for Android
  • Mobile
  • Large screens
  • Wear OS
  • TV
  • Architecture
  • Introduction
  • Libraries
  • Navigation
  • Modularization
  • Testing
  • Quality
  • Overview
  • Core value
  • User experience
  • Technical quality
  • Privacy & security
  • Build for Billions
  • Overview
  • About new markets
  • Android (Go edition)
  • Home
  • NDK
  • Develop
  • Guides

Build your project

There are three main ways to build code with the NDK:

  • The Make-based ndk-build.
  • CMake.
  • Standalone toolchains for integration with other build systems, or use with configure-based projects.

Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2020-08-17 UTC.

  • WeChat WeChat
    Follow Google Developers on WeChat
  • Twitter Twitter
    Follow @AndroidDev on Twitter
  • YouTube YouTube
    Check out Android Developers on YouTube
  • More Android

    • Android
    • Enterprise
    • Security
    • Source
  • Support

    • Report platform bug
    • Report documentation bug
    • Google Play support
    • Join research studies
  • Documentation

    • Developer guides
    • Design guides
    • API reference
    • Samples
    • Android Studio
Google Developers
  • Android
  • Chrome
  • Firebase
  • Google Cloud Platform
  • All products
  • Privacy
  • License
  • Brand guidelines
  • ICP证合字B2-20070004号
  • Get news and tips by email Subscribe
  • English
  • Bahasa Indonesia
  • Deutsch
  • Español
  • Español – América Latina
  • Français
  • Italiano
  • Português – Brasil
  • Tiếng Việt
  • Türkçe
  • Русский
  • العربيّة
  • ภาษาไทย
  • 中文 – 简体
  • 中文 – 繁體
  • 日本語
  • 한국어