android-ndk - 在 NDK 中包含库时出错

标签 android-ndk shared-libraries

我的 project/jni 文件夹中有以下代码作为 Android.mk。文件夹libA位于project/jni中,它有一个Android.mk。我在 jni/Android.mk 中包含了 libA

jni/Android.mk:

LOCAL_PATH := $(call my-dir) 
include $(LOCAL_PATH)/libA/Android.mk 
include $(CLEAR_VARS)
LOCAL_MODULE    := hello-jni
LOCAL_SRC_FILES := hello-jni.c
include $(BUILD_SHARED_LIBRARY)

我收到此错误

jni/Android.mk:16: jni: Permission denied
jni/Android.mk:16: /libA/Android.mk: No such file or directory
make: *** No rule to make target `/libA/Android.mk'.  Stop.

我尝试了以下给出的解决方案: No rule to make target NDK .但是同样的错误再次出现。我无法弄清楚为什么会发生这种情况。

最佳答案

Makefile 是一件棘手的事情。当你调用子目录等时 my-dir 会被更改。 但实际上你可以解决这个问题,而无需将源代码放在/jni 文件中。

MY_PATH = $(call my-dir)
LOCAL_PATH = $(MY_PATH)

在任何清除变量之前调用第二条语句。完成!

关于android-ndk - 在 NDK 中包含库时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10686168/

相关文章:

eclipse 中的 Android NDK 插件

android - 登录Android NDK代码的任何简单方法?

android - 从 Java 实例化 JNI 库的多个副本

python - 将调用 C 函数的 Python 2.7 代码移植到 Python 3.4

linux - 在没有 sudo 访问权限的情况下添加到 CUDA 库的路径

c++ - Linux 共享库被加载两次

Android/dev/uinput 不工作

Android NDK JNI 未定义对 C++ 源方法的引用

c++ - 使用 C 动态加载例程的问题

c++ - 模板基类的静态成员不会导出到共享库