使用ndk编译生成so动态库

Android.mk文件:


Android提供的一种makefile文件,用来指定诸如编译生成so库名、

引用的头文件目录、需要编译的.c/.cpp文件和.a静态库文件等。

 

  1. LOCAL_PATH := $(call my-dir)    //当前路径(如果你了解shell语言,应该可以很轻松的理解) 
  2. include $(CLEAR_VARS) 
  3. LOCAL_MODULE    := Hello        //要生成的.so库名 
  4. LOCAL_SRC_FILES := Hello.c        //你的.c/c++文件名字 
  5. include $(BUILD_SHARED_LIBRARY) 

注意:Android.mk文件包含上述注释时,运行ndk-build命令会报错


此时将注释删除即可成功生成.so共享库


Application.mk文件:


定义了项目的一些细节,比如APP_ABI := x86(编译X86平台库)、

APP_PLATFORM := android-9(使用android-9以上的平台库)。



 生成so动态库步骤

    1. 用cd命令移至jni目录,运行ndk-build命令,这时命令行中可能会出现编译错误,比如头文件找不到,函数找不到等等,细心找找就能改掉。
    2. 编译成功后,在工程目录下libs/x86中就会生成你想要的.so库。

你可能感兴趣的:(android)