【问题标题】:How to compile a custom folder structure with ndk-build?如何使用 ndk-build 编译自定义文件夹结构?
【发布时间】:2012-03-19 00:52:56
【问题描述】:

我有下一个文件夹结构:


在 $My_Eclipse_Project 上

  • jni/Android.mk
  • jni/Application.mk
  • jni/main.cpp
  • lib/

在 $My_Library_Project 上

  • src/
  • 包括/
  • Android.mk

$My_Eclipse_Project/jni/main.cpp 是一个基本的 makefile,它调用源代码进行编译,遵循 $My_Library_Project/Android.mk 中的说明

# 笔记: $(警告从 sample_cameraview_activity 编译 Android.mk) # 这个路径 LOCAL_PATH := $(调用我的目录) $(警告本地路径:$(LOCAL_PATH)) # GNU 变量 包括 $(CLEAR_VARS) # 包含额外的库 包括 $(mylibrary_INCLUDE)/../Android.mk # 添加openCV # 添加 .bashrc 环境变量 包括 $(OPENCV_SHARE_MK)/OpenCV.mk LOCAL_ARM_NEON := 真 # 本地库 LOCAL_LDLIBS += -llog -lGLESv1_CM # 命名库 LOCAL_MODULE := camView # 本地 SRC LOCAL_SRC_FILES := main.cpp # 共享库 包括 $(BUILD_SHARED_LIBRARY)

问题是,$My_Library_Project>Android.mk 没有检测到等待的文件夹结构,因为我的源在 src 文件夹中,而不是在 jni 文件夹中。我明白了:

Android NDK:找不到应用程序项目目录! Android NDK:请定义 NDK_PROJECT_PATH 变量以指向它。

如何从 $My_Eclipse_Project 编译 $My_Library_Project 中的代码,并复制在 $My_Eclipse_Project>lib/armeabi 上生成的库,供 main.cpp 使用?

提前致谢。

【问题讨论】:

    标签: linker android-ndk shared-libraries


    【解决方案1】:

    2 个选项。您可以定义 $NDK_PROJECT_PATH = /your_ndk_path,Makefile 自动检测路径并使用它来编译,或者添加一个名为 $NDK_PROJECT_PATH 和值为 /your_ndk_path 的环境变量。

    【讨论】:

      猜你喜欢
      • 2013-01-31
      • 1970-01-01
      • 2021-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-04
      • 1970-01-01
      相关资源
      最近更新 更多