android ndk 使用第三方静态库

1 将第三方静态库的头文件,.a文件拷贝到Android ndk的source目录里面:

这个目录里面,Android目录里面放了.a静态库,boost里面放了头文件,android.mk文件的内容:

LOCAL_PATH:= $(call my-dir)


include $(CLEAR_VARS)
LOCAL_MODULE:= boost_thread
LOCAL_SRC_FILES:= android/lib/libboost_thread.a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)
include $(PREBUILT_STATIC_LIBRARY)

#如果还有其他的静态库:

include $(CLEAR_VARS)
LOCAL_MODULE:= boost_iostreams
LOCAL_SRC_FILES:= android/lib/libboost_iostreams.a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)
include $(PREBUILT_STATIC_LIBRARY)


这样在其他工程要使用这个libboost_thread.a的做法是:

        只需要在其他ndk工程的mk文件里面添加如下两句即可:

        LOCAL_STATIC_LIBRARIES := boost_thread

        $(call import-module,boost)        #表示引用了source/boost目录里面的android.mk文件。


如果工程里面使用了多个.a文件,有的时候提示链接不到某个.a里面的函数,可能是LOCAL_STATIC_LIBRARIES := 里面列出来的.a模块的顺序不对。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值