zl程序教程

您现在的位置是:首页 >  APP

当前栏目

CMake ‘3.10.2‘ was not found in PATH or by cmake.dir property.

2023-04-18 14:28:43 时间

最近导入了一个项目编译时报错,大致意思是找不到CMake路径,因为我们工程在引用C/C++库时,还需要配置下CMake,具体解决步骤如下:

1.AndroidStudio没有下载过CMake的同学请先下载,下载路径如图:

目前最新版本的studio下载的默认版本为3.22.1,因为我们要使用版本3.10.2,所以还需要勾选下3.10.2的版本,点击APPLY开始下载即可。

2.由于CMake默认使用的是3.22.1版本的原因,所以我们还需要在build.gradle里指定下版本号

externalNativeBuild {
        cmake {
            version "3.10.2"
        }
    }

到这里如果可以编译成功,那么恭喜你可以继续撸码了,如果还是报错请继续往下看……

3.有些电脑下载后还是找不到路径(黑人问号脸…),那么既然找不到我们就去到项目里给它指定路径,找到CMake路径将其配置在local.properties,然后Rebuild Project下即可

cmake.dir = C:\Users\XXX\AppData\Local\Android\Sdk\cmake\3.10.2.4988404 

如果编译成功,那么恭喜你又可以继续撸码了,如果还是报错并报以下错误那请再继续往下看……

No toolchains found in the NDK toolchains folder for ABI with prefix: arm-linux-androideabi

4.报错原因是项目编译时找不到NDK中的arm-linux-androideabi工具(该工具存在于SDK->NDK->XX版本->toolchains文件夹下),那么首先我们先查看下电脑有没有配置过NDK

如果没有配置过可以点击Download直接下载,或者在Setting->Android SDK->SDK Tools->NDK里根据自己的需要勾选下载(下载比较慢,也可直接到NDK官网下载链接

我本机之前下载过就随便勾选了一个23版本的NDK,使用之前我们可以先查看该版本下有没有我们需要的工具

复制该路径在文件夹中打开,并点击进入到toolchains中发现并没有arm-linux-androideabi文件夹

换一个版本看下(20.0.5594570),打开发现这个版本存在arm-linux-androideabi文件夹

OK!那我们就改用20.0.5594570版本试下,在local.properties中添加指定ndk的路径

ndk.dir = C:\Users\XXX\AppData\Local\Android\Sdk\ndk\20.0.5594570

Rebuild Project后工程终于可以正常编译了!