之前我使用的是NDK 13.1,但在我将其更新为16.1(似乎是最新版本)后,我的Android项目再也无法libz
。
```
错误:(693)Android NDK:模块pngt取决于未定义的模块:z
错误:(706)*** Android NDK:正在中止(将APP_ALLOW_MISSING_DEPS = true设置为>允许缺少依赖项)。停止。
错误:配置项目':app'时出现问题。
无法解析配置':app:_debugApk'的所有依赖项。 配置项目':xxx'时出现问题。 为ndkBuild xxx / jni / Android.mk执行外部本机构建 ```
我根本没有改变任何其他内容,而且我可以正确地找到libz
留在我的Android NDK目录中。
有什么建议吗?
答案 0 :(得分:1)
如果您收到该错误,只需从LOCAL_SHARED_LIRBARIES
删除libz即可。它之前没有被使用过。这些警告是告诉你它被忽略了。
答案 1 :(得分:0)
尝试将此添加到Android.mk:
LOCAL_LDLIBS:= - lz
如果这不起作用,请使用LDFLAGS指定libz.so的路径
对于我来说
LOCAL_LDFLAGS:= -L / opt / sdk / ndk-bundle / platforms / android-24 / arch-arm64 / usr / lib
当然这是假设你最初有下面的,现在失败了。
LOCAL_SHARED_LIBRARIES:= libz
答案 2 :(得分:0)
我也遇到了同样的问题,我不知道这是否可以帮助您解决这个问题,但是由于该问题是我搜索此问题时遇到的第一个问题,因此我决定为有此问题的其他人回答用我做的方式做错了:
我这样做是给我错误的: find_library(zlib libz)#错误的方式 这是错误的,我不得不这样省略libz的lib部分:
pkg app.js