我有一个使用 C++ native 代码的 Android 应用程序,该代码是使用 CMake 构建的。在项目的 CMakeLists 中,使用 add_subdirectory()
添加了一个库。这个库有很多目标,其中一些不针对 Android 平台编译(它们在 Android 上产生编译错误)。但是,我的 Android 应用程序不链接任何这些目标,因此根本不需要构建它们。但无论如何,Android Studio 都会尝试构建它们。
我的问题是是否有可能以某种方式在 Android Studio 中禁用这些目标。我可以告诉 Android Studio 不要构建这些目标吗?
最佳答案
Google 想到了这一点:您可以 select which targets to build .
下面的示例是链接示例的最小版本;它只构建libexample-one
:
android {
defaultConfig {
externalNativeBuild {
cmake {
// Note that Gradle packages only shared libraries into your APK.
targets "libexample-one"
}
}
}
}
或者,您可以破解库的 CMakeLists.txt 以从自动构建中排除有问题的目标。
关于android - 构建 Android 应用程序时禁用 CMake 目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57007783/