环境:Ubuntu 14;android-ndk-r11; 说明:此方法适用于将各种库移植到android上,或者将自己编写的代码编译成动态库。 方法: 1.在需要编译成库的代码目录下,添加Makefile、Android.mk、Application.mk三个文件; 2.Makefile内容如下: 简单分析一下这个Makefile: 因为我们的当前目录并不是jni目录,ndk-build是不知道如何编译和终止的,所以我们需要指定NDK_PROJECT_PATH、APP_BUILD_SCRIPT和NDK_APPLICATION_MK的值。 这样我们就可以在当前目录下进行编译了。 Android.mk内容如下: 详细的说明可见:https://developer.android.google.cn/ndk/guides/android_mk?hl=zh-cn Application.mk指定ndk-build的项目范围设置。 Application.mk内容如下: 其他的设置,可见:https://developer.android.google.cn/ndk/guides/application_mk?hl=zh-cn android-ndk的安装配置:https://blog.csdn.net/qq_38410730/article/details/94151172 前面介绍的是基本的设置,那如果需要在动态库里面调用其他的动态库或者静态库,那需要如何写呢? 写法基本上与传统的Android.mk 上添加动态库是一致: 简单的说明下,上面的Android.mk又额外链接了1个动态库libabc.so 和2个静态库:libxx1.a和libxx2.a;将动态库和静态库的.h文件放在了include目录下,这样就ok了。 本文为作者原创,如需转载,请在评论区征得作者同意,原创链接:https://blog.csdn.net/anranjingsi/article/details/106100385
###指定NDK的目录 NDK_PATH=/xxx/xxxx/android-ndk-r11 all: ${NDK_PATH}/ndk-build NDK_PROJECT_PATH=./ NDK_APPLICATION_MK=./Application.mk APP_BUILD_SCRIPT=./Android.mk clean: rm ./obj ./libs -rf
###源码文件位置,call my-dir 由Build System提供,返回包含Android.mk的目录路径 LOCAL_PATH:= $(call my-dir) ###固定写法,用于清理 include $(CLEAR_VARS) ###包含的.c文件 LOCAL_SRC_FILES := xx1.c xx2.c xx3.c ###lib name,不可包含空格 LOCAL_MODULE := libxxx ###下面这句可以不写 LOCAL_C_INCLUDES := $(LOCAL_PATH) ### 生成动态库,如果是静态库,则为BUILD_STATIC_LIB include $(BUILD_SHARED_LIBRARY)
###使用 APP_ABI 设置为特定ABI生成代码,这里指定为ARMv7,这样与ARMv5/v6就不兼容了 APP_ABI := armeabi-v7a
###源码文件位置,call my-dir 由Build System提供,返回包含Android.mk的目录路径 LOCAL_PATH:= $(call my-dir) ###固定写法,用于清理 include $(CLEAR_VARS) ###包含的.c文件 LOCAL_SRC_FILES := xx1.c xx2.c xx3.c ###lib name,不可包含空格 LOCAL_MODULE := libxxx ###下面这句指定了包含的.h文件路径 LOCAL_C_INCLUDES := $(LOCAL_PATH) $(LOCAL_PATH)/include ###添加动态库、静态库 LOCAL_LDLIBS := -L$(LOCAL_PATH)/lib -labc LOCAL_LDLIBS += $(LOCAL_PATH)/lib/libxx1.a LOCAL_LDLIBS += $(LOCAL_PATH)/lib/libxx2.a ### 生成动态库,如果是静态库,则为BUILD_STATIC_LIB include $(BUILD_SHARED_LIBRARY)
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算