我有一个带有大量 native c++ 代码的 Android 项目(Android Studio 2.2)(使用从 gradles externalNativeBuild 调用的 cmake 编译)。默认情况下,从 gradle 开始的 cmake build 编译具有最大工作线程数(== CPU 核心数)的 native 代码,但它使我的机器无法使用 20 分钟。因此,我想手动指定应该使用多少个内核,我在 ndk-build 中使用 -j 开关做了什么。是否可以通过这些信息从 gradle 构建系统?
有文档说明如何将参数传递给生成 ninja 构建脚本的第一个 cmake 调用,但没有说明如何将参数传递给 cmake --build (ninja) 的文档。
是否可以从 gradle 覆盖本地 cmake 构建的工作人员数量?
最佳答案
https://cmake.org/cmake/help/latest/envvar/CMAKE_BUILD_PARALLEL_LEVEL.html说如果 CMAKE_BUILD_PARALLEL_LEVEL
环境已设置,其值将用作 cmake --build
的默认并发进程数称呼。
此变量自 CMake 3.12 起可用。
关于Android gradle+CMake - 如何设置构建 worker 的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40671257/