External Native Build Issues: SIMPLE: Error configuring

今天在Android Studio中新建了一个默认的native工程,默认使用CMake来构建,理论上一行代码就不用写就可以运行一个helloworld的示例程序(Hello from C++”)。

在gradle更新的时候遇到如下错误:


从Build View中无法看到更多信息,但可以确定是在执行externalNativeBuild脚本使用CMake构建的时候出错的

externalNativeBuild {
        cmake {
            path "src/main/cpp/CMakeLists.txt"
        }
    }
...

直接make工程:



可以从编译日志中查询更多的堆栈信息,找不到根源错误

最后在工程目录下使用gradle命令编译:

./gradlew build

可以看到CMake构建时的错误日志,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
方法1:下载打包好的可执行文件,解压得到ninja文件
方法2:

$ git clone git://github.com/ninja-build/ninja.git && cd ninja
$ git checkout release
$ python ./bootstrap.py

上述命令会在当前目录下生成一个ninja文件,然后将这个文件拷贝到/usr/local/bin目录下就完成安装了。

重新构建工程,成功!

环境参考:
MacOS Mojave 10.14.2
Android Studio 3.3.1
gradle 3.1.4
cmake version 3.13.2

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容