zoukankan      html  css  js  c++  java
  • 使用ndk编译生成so动态库

    使用NDK编译.so库的好处在于,不需要写复杂的makefile,不需要配复杂的平台相关参数(我之前的错误可能是出在makefile中的一些平台相关参数没配好),因为google已经帮我们做好了。

    我在这里给大家分享一下使用NDK编译将静态库.a和.c/.cpp编译成x86/.so动态库的方法:

    编译环境:SshClient+编译服务器,使用mount命令将本地项目mount到编译服务器。

    1. 在eclipse工程目录下建立一个jni的文件夹。
    2. 在jni文件夹中建立Android.mk和Application.mk文件。

    Android.mk文件:

    Android提供的一种makefile文件,用来指定诸如编译生成so库名、引用的头文件目录、需要编译的.c/.cpp文件和.a静态库文件等。详见附件中的Android.mk。

    Application.mk文件:

    定义了项目的一些细节,比如APP_ABI := x86(编译X86平台库)、APP_PLATFORM := android-9(使用android-9以上的平台库)。

    1. 用cd命令移至jni目录,运行/mnt/500G/public/NDK/android-ndk-r7b/ndk-build命令,这时命令行中可能会出现编译错误,比如头文件找不到,函数找不到等等,细心找找就能改掉。
    2. 编译成功后,在工程目录下libs/x86中就会生成你想要的.so库。
  • 相关阅读:
    这是另外一篇
    使用客户端写博客
    vim编码相关配置
    给eclipse装一些插件
    手机型号收集
    解决黑苹果与windows时区不一致
    记录一些在VPS上折腾的东西
    一个获取文件绝对路径的sh
    python批量GBK转UTF-8
    用NDK编译lua库
  • 原文地址:https://www.cnblogs.com/androidwsjisji/p/2373274.html
Copyright © 2011-2022 走看看