Android NDK编译静态链接库及动态链接库(librtmp编译小白填坑)

来源:互联网 发布:登录淘宝要脸部拍摄 编辑:程序博客网 时间:2024/05/22 13:48

1.有用的文章

   编译文件写法

   静态链接库动态链接库对比

2.科普几个概念

   静态链接库:.a文件的形式,就是将所有源代码编译成库文件,体积较大。使用场景主要是区分不同版本的依赖库,或将底层库A以静态链接库的形式,编译进上层库B,再对外提供。如果其他库调用A,只需要直接引用B中的模块即可。

   动态链接库:.so文件的形式,就是运行时链接,体积较小。

   

3.举例(以编译librtmp为例)


4.填坑

一开始对Android.mk和Application.mk文件编写规则很不熟悉,一通瞎折腾。

  • 注意库文件、头文件地址一定要正确
  • 每一个依赖模块编译开始时,都要用include $(CLEAR_VARS)重置环境,否则会沿用之前的模块配置。
  • 链接第三方静态库来编译时,若第三方静态库之间也有依赖关系(如A依赖B),则需要在配置静态库时将A写在B之前,LOCAL_STATIC_LIBRARIES += A B

阅读全文
0 0