Android NDK CMake error问题的一个解决方法

最近需要处理Android NDK的一些代码,翻到先前可以正常运行的工程,编译发现一直报错误:

CMake Error: CMake was unable to find a build program corresponding to “Ninja”. CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool

看到这个错误,很迷惑,Ninja是一个编译系统,和make类似,怎么会报出这个错误?

在继续看的过程中,发现这个错误是在工程 prebuild 的时候出现的,并没有进入实质的编译过程,这时候推断,应该是和工具有关了。

同时,这是提示系统没有找到Niaja的提示,但是查资料后发现,Niaja是在NDK中包含,在编译的时候自动调用的,所以应该是不需要安装额外的Niaja的。

于是,进行各种设置来尝试,但都是失败,网上查了下,大约解决方法都是升级Gradle版本,SDK版本来解决,在各种尝试后,只能也来这么做了。

于是,将自己工程的Gradle升级为 3.3.2, buildToolsVersion使用28.0.3,问题解决了,花了将近一天的时间,却是通过升级工具来解决这个问题。。。

回想先前自己的Android Studio也升级过几次,可能是升级过程中导致某些问题。但今天,没有经历来继续追寻原因了,就先记录一下吧。

希望对大家也会有帮助。

    原文作者:牛开放
    原文地址: https://zhuanlan.zhihu.com/p/58787310
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞