如何在编译期间获取 NDK 版本?
How can I get the NDK version during compile time?
我搜索了一下,似乎在某个时候至少提出了 __NDK_MAJOR__
,但至少从 NDK 15c 开始,它似乎没有被设置。
预处理器中是否有一种方法可以确定用于从源构建的 NDK 版本?
它在 r16 中。如果您需要在此之前知道版本,则需要解析 $NDK/source.properties
文件并将其作为构建系统的一部分作为定义传递给您的代码。
试试这些:
#include <android/api-level.h>
#ifdef __ANDROID_API_O_MR1__
# include <android/ndk-version.h>
# ifdef __NDK_MAJOR__
# define MY_NDK_VERSION __NDK_MAJOR__
# else
# define MY_NDK_VERSION 16
# endif
#else
# define MY_NDK_VERSION 14
#endif
我搜索了一下,似乎在某个时候至少提出了 __NDK_MAJOR__
,但至少从 NDK 15c 开始,它似乎没有被设置。
预处理器中是否有一种方法可以确定用于从源构建的 NDK 版本?
它在 r16 中。如果您需要在此之前知道版本,则需要解析 $NDK/source.properties
文件并将其作为构建系统的一部分作为定义传递给您的代码。
试试这些:
#include <android/api-level.h>
#ifdef __ANDROID_API_O_MR1__
# include <android/ndk-version.h>
# ifdef __NDK_MAJOR__
# define MY_NDK_VERSION __NDK_MAJOR__
# else
# define MY_NDK_VERSION 16
# endif
#else
# define MY_NDK_VERSION 14
#endif