Report issues to GitHub.
For Android Studio issues, go to https://b.android.com and file a bug using the Android Studio component, not the NDK component.
If you're a build system maintainer that needs to use the tools in the NDK directly, see the build system maintainers guide.
Android V will allow OEMs to ship arm64-v8a devices with 16KiB page sizes. Devices that use this configuration will not be able to run existing apps that use native code. To be compatible with these devices, applications will need to rebuild all their native code to be 16KiB aligned, and rewrite any code which assumes a specific page size. ndk-build and CMake have options to enable this mode (see note about APP_SUPPORT_FLEXIBLE_PAGE_SIZES
and ANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES
below). A future version of the NDK will enable this mode by default. If you're using or maintaining a third-party build system, consult the build system maintainers guide for instructions.
See Support 16 KB page sizes for more information.
clang_source_info.md
in the toolchain directory for version information.clang_source_info.md
in the toolchain directory for version information.cmake_minimum_required
version (“Policy CMP0057 is not set: Support new IN_LIST if() operator”).LOCAL_STRIP_MODE
not being reset by include $(CLEAR_VARS)
.CMAKE_SYSTEM_PROCESSOR
instead of CMAKE_ANDROID_ARCH_ABI
. If you ran into this problem, you should switch to using CMAKE_ANDROID_ARCH_ABI
because that‘s what CMake's docs say to use. Better still, use the NDK’s toolchain file.clang_source_info.md
in the toolchain directory for version information.clang-scan-deps
is now included.std::regex_replace
results.std::unexpected::has_value()
.preserve_all
calling convention.__attribute__((__const__))
from gettid
.aarch64-linux-android21-clang
, you can instead use clang -target aarch64-linux-android21
, e.g. CC="clang -target aarch64-linux-android21" ./configure
. The wrappers are only needed when working with systems that do not properly handle a CC
that includes arguments.ANDROID_USE_LEGACY_TOOLCHAIN_FILE
value is now preserved during try-compile steps when ON
.sources/third_party/vulkan
. The standard Vulkan headers are included in the Android sysroot, which Clang will find automatically.APP_SUPPORT_FLEXIBLE_PAGE_SIZES
for ndk-build and ANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES
for CMake. Set to APP_SUPPORT_FLEXIBLE_PAGE_SIZES := true
in your Application.mk
or pass -DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON
to CMake (via android.defaultConfig.externalNativeBuild.cmake.arguments
if you're using the Android Gradle Plugin) to build your code to be compatible with devices that use a 16KiB page size. Third-party build system users and maintainers should consult the build system maintainers guide.