我有2个项目:

  • 用NDK r9和libSL.a构建的静态libray Android.mk
  • 一个Android Studio项目,其中包含:
  • WL.java(libWL.so周围的JNI包装器)。
  • jniWL.hjni/WL.c(libWL.so的源代码),它们需要libSL.a
  • lib/libWL.so

  • 如何在Gradle's Native Binary support中将libSL.a包含在libWL.so中?

    最佳答案

    要包含静态库,您需要在链接阶段将其添加为链接器的参数。目标是共享库还是可执行文件都没有关系。我用了

    ndk {
        ...
        ldLibs "/some/path/libs/libcurl.a", "z", "log", "android", "EGL", "GLESv2", "OpenSLES"
    }
    

    在我的项目中。并且:
     stl "gnustl_static"
    

    这给了我本机的.so模块。

    10-07 19:30
    查看更多