ndk中引用第三方库以及遍历所有源文件的方法

LOCAL_PATH:= $(call my-dir)

#第三方库的设置方法,后面通过LOCAL_STATIC_LIBRARIES来引用
include $(CLEAR_VARS)
LOCAL_MODULE := libcrypto
LOCAL_SRC_FILES := libcrypto.a
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := openssl_use
LOCAL_C_INCLUDES := E:/study/openssl/openssl-android-master/include
# 遍历目录及子目录的函数
define walk
$(wildcard $(1)) $(foreach e, $(wildcard $(1)/*), $(call walk, $(e)))
endef
# 遍历Classes目录
ALLFILES = $(call walk, $(LOCAL_PATH)/src)
# 从所有文件中提取出所有.cpp文件
FILE_LIST += $(filter %.cpp %.cc, $(ALLFILES))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)

LOCAL_STATIC_LIBRARIES := libcrypto

include $(BUILD_SHARED_LIBRARY)

时间: 2024-10-25 17:55:25

ndk中引用第三方库以及遍历所有源文件的方法的相关文章

iOS项目中引用第三方库引发冲突的解决方法

在iOS程序开发过程中,经常会碰见引用第三方库出现类名重复使用,导致冲突. 解决方案 1.使用命令将.a库中的相同的包移除 2.在编译链接项中添加-dead_strip项  补充说明: -dead_strip:删除多余的库符号: -all_load:让链接器把所有找到的目标文件都加载到可执行文件中: -force_load:所做的事情跟-all_load其实是一样的,但是-force_load需要指定要进行全部加载的库文件的路径 使用命令将.a库中的相同的包移除步骤如下: 1.创建临时文件夹(用

APK中引用第三方库文件

注意以下操作是在源码中进行,即修改Android.mk,并非借助IDE(AndroidStudio)的情形. 引用第三方JAR包 1,在源Android.mk里面加参数,使其编译为JAR包,然后mm编译 ... LOCAL_MODULE_CLASS := JAVA_LIBRARIES include $(BUILD_JAVA_LIBRARY) ... 2,提取class.jar选用 把common下面的jar包文件(out\target\common\obj\JAVA_LIBRARIES\xxx

IOS 编程中引用第三方的方类库的方法及常见问题(转载)

//原文:http://www.th7.cn/Program/IOS/201407/244585.shtml 方法一:直接复制所有源文件到项目中 这种方法就是把第三方类库的所有源文件复制到项目中,直接把所有.h和.m文件拖到XCode项目中即可. 注意: 1. 如果第三方类库引用了一些系统自带类库,那么在项目中还需要额外引用那些类库. 2. 如果当前的项目启用了ARC,而引用的第三方类库未使用ARC,那还需要在项目信息的Targets – Build Parses 里找到第三方类库的.m文件,并

Android Studio中导入第三方库

之前开发Android都是使用的eclipse,最近由于和外国朋友Timothy一起开发一款应用,他是从WP平台刚切换使用Android的,使用的开发环境时Android Studio,为了便于项目的交流,我便尝试着去使用Android Studio.刚开始用遇到一个问题:如何在Android Studio中导入第三方库? 首先本人使用的Studio版本为0.5.8,尝试解决方法如下,分两种: 1.导入jar包 直接复制你的jar包(如actiobarsherlock.jar)至工程的libs目

Android中集成第三方库的方法和问题

声明: 1. 本文参考了网上同学们的现有成果,在此表示感谢,参考资料在文后有链接. 2. 本文的重点在第三部分,是在开发中遇到的问题及解决办法.第一,第二部分为参考网上同学们的成果加以整理而成. 3. 欢迎转载,交流,请尊重作者劳动成果:转载请注明出处,谢谢! Android中使用第三方库可能有两种:Java库.jar和原生库.so/.a,如果只是做上层APK开发,这两种库都可以通过Eclipse集成开发环境进行集成,如果是平台级开发,则都可通过源码集成.本文整理这两种集成方式使用步骤,以下假设

VS中使用第三方库原理(配置sqlite数据库)

我们在编写程序时,,不可避免的会使用第三方的库文件,很少使用源文件(.cpp),大部分是使用对类进行声明的头文件和封装了类的链接库(静态lib或动态dll),比如我们写程序用的iostream这个库,当然这个是已经设置好的官方的库,让我们使用某个第三方的库时,需要自己来进行配置. C++的库会把函数.类的声明放在*.h中,实现放在*.cpp或*.cc中.编译之后,*.cpp,*.cc,*.c会被打包成一个.lib文件,这样可以保护源代码. 所以,要使用一个库,除了要include他的头文件以外,

IOS 编程中引用第三方的方类库的方法及常见问题

方法一:直接复制所有源文件到项目中 这种方法就是把第三方类库的所有源文件复制到项目中,直接把所有.h和.m文件拖到XCode项目中即可. 注意: 1. 如果第三方类库引用了一些系统自带类库,那么在项目中还需要额外引用那些类库. 2. 如果当前的项目启用了ARC,而引用的第三方类库未使用ARC,那还需要在项目信息的Targets – Build Parses 里找到第三方类库的.m文件,并为它们加上-fno-objc-arc标记. 3. 对于在未启用ARC的项目用引用使用了ARC的第三方类库,则需

cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法

cocos2d-x 3.0 中,如果你需要使用CocosStudio.Extensions扩展库 等等,都需要自己手动添加. 添加步骤如下:(比如说现在我要添加libExtensions,libCocosStudio , libGUI) 1.添加附加项目 右击解决方案--->添加现有项目--->添加:项目目录\cocos2d\extensions\proj.win32\libExtensions,然后你会发现左边多了一个libExtensions扩展库 右击解决方案--->添加现有项目-

关于egret引用第三方库的笔记

关于egret引用第三方库的笔记 当前我需要使用一个第三方的js库(umeng的js统计): 我创建个UmengAnalysis.js文件,代码如下: /**  * Created by haocao on 15/6/25.  */ var umeng; (function(umeng){     function onClickEvent(label,duration){         onEvent('click',label,duration)     }     function on