当切换到较新版本的android ndk时未定义模块

 2023-01-20    280  

问题描述

我正在尝试将NDK-R11C升级到NDK-R14.当我运行R14时,我会发现一个错误

android ndk:模块myjni取决于模块:png jpeg log

当切换到较新版本的android ndk时未定义模块

在我的Android Make中:
local_shared_libraries:= png jpeg log

推荐答案

假设您没有复制完整的错误消息,并且实际上说”取决于 undefined 模块”,请检查发行笔记:

模块的构建如果缺少任何依赖项,现在将失败.要恢复到旧行为,请设置app_allow_missing_deps = true.参见 https://github.com/android-ndk/ndk/ndk/ndk/ndk/issues/208.

liblog不应该在LOCAL_SHARED_LIBRARIES中.您想要LOCAL_LDLIBS := -llog.虽然,实际上,如果此警告要发射,但是您的项目正在构建,您还是不会使用它.

libjpeg和libpng您的项目似乎没有定义.只是将它们删除,因为它们无论如何都无法使用.

其他推荐答案

遇到了类似的错误Android SDK 3.1,缺少OpenCV_LEGACY模块

/home/jenkins/android-ndk-r15c/build/core/build-binary.mk:688: Android NDK: Module TestProject depends on undefined modules: opencv_legacy

将以下行添加到src/main/jni/application.mk解决问题,谢谢@dan albert

APP_ALLOW_MISSING_DEPS=true

其他推荐答案

我也遇到了这个错误,但出于不同的原因.

构建环境托管在Windows上,并且正在构建的项目位于一个深处目录中.由于Windows路径尺寸的限制,无法找到必要的模块.

因此,我解决了在高级路径(例如d:\)中构建项目的问题,以确保路径大小不会成为问题.

以上所述是小编给大家介绍的当切换到较新版本的android ndk时未定义模块,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/26016.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。