android studio 利用gradle和cmakelist生成c++静态库.a的方法总结

android生成静态库的方法有两种,一种是编辑android.mk文件,一种是编辑cmakelist文件。前一种没做研究,因为用的ide是android studio,所以直接利用gradle调用cmakelist文件完成静态库的生成,就是第二种方式。现总结如下:

文件需求:

1.cpp头文件源文件

2.cmakelists.txt文件

3.gen-gmath(生成静态库的module)下的build.gradle

4.hellojni(工程)下的settings.gradle

文件修改需求:

1.c++文件,不解释

2.增加代码   add_library(gmath STATIC gmath/src/gmath.c)            

   此处还应该对静态库生成的位置进行设置,但是初学,所以后续研究。

   不设置路径的情况下,是生成在module的externalNativeBuild文件下。

3.在module的gradle.build文件中的  defaultConfig大括号中增加

externalNativeBuild{
  cmake{
      arguments '-DANDROID_PLATFORM=android-14',
           '-DANDROID_TOOLCHAIN=clang'
      targets 'gmath'
     }
}

在android大括号中增加

externalNativeBuild{
  cmake{
      path 'src/main/cpp/CMakeLists.txt'
  }
}

4.在工程的settings.gradle中增加include ‘:gen-gmath’(module名)

原文地址:https://www.cnblogs.com/hanmolabi/p/7782369.html