首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将预先构建的共享库链接到AndroidNDK项目?

如何将预先构建的共享库链接到AndroidNDK项目?
EN

Stack Overflow用户
提问于 2018-02-02 00:22:36
回答 2查看 0关注 0票数 0

用这个Android.mk文件在jni/文件夹。

代码语言:txt
复制
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

# Here we give our module name and source file(s)
LOCAL_MODULE    := offlineDownload
LOCAL_SRC_FILES := offline_download.c

LOCAL_SHARED_LIBRARIES :=../lib/libpackext.so.1.0
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog

include $(BUILD_SHARED_LIBRARY)

做一个lib文件夹中

代码语言:txt
复制
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    := packext
LOCAL_SRC_FILES := libpackext.so.1.0
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../include

include $(PREBUILT_SHARED_LIBRARY)
EN

回答 2

Stack Overflow用户

发布于 2018-02-02 08:57:52

下面是一个完整的Android.mk文件

代码语言:txt
复制
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := ffmpeg
LOCAL_SRC_FILES := libffmpeg.so
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../ffmpeg/libs/arm-linux-androideabi4.7_1/include
include $(PREBUILT_SHARED_LIBRARY)


include $(CLEAR_VARS)
LOCAL_MODULE    := ffmpegandroid
LOCAL_SRC_FILES := ffmpegandroid.c
LOCAL_SHARED_LIBRARIES := ffmpeg
include $(BUILD_SHARED_LIBRARY)

可以指定:

代码语言:txt
复制
APP_ABI := armeabi armeabi-v7a x86 mips

在JNI/Application.mk:

代码语言:txt
复制
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libffmpeg.so
票数 0
EN

Stack Overflow用户

发布于 2018-02-02 09:48:46

必须执行以下任一操作:

  1. 从你的第二个Android.mk中剪切和粘贴除LOCAL_PATH以外的所有内容:= $(call my-dir)
  2. 在你的第一个Android.mk的末尾放置以下内容: $(调用import-module,packext)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100003447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档