java jni 怎么在windows环境中编译成linux下的so文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java jni 怎么在windows环境中编译成linux下的so文件相关的知识,希望对你有一定的参考价值。

可以直接在android工程下使用,因为android就是linux内核。

    android的NDK开发需要在linux下进行: 因为需要把C/C++编写的代码生成能在arm上运行的.so文件,这就需要用到交叉编译环境,而交叉编译需要在linux系统下才能完成。

    2.安装android-ndk开发包,这个开发包可以在google android : 通过这个开发包的工具才能将android jni 的C/C++的代码编译成库

    3.android应用程序开发环境: 包括eclipse、java、 android sdk、 adt等。

    NDK编译步骤:

    选择 ndk 自带的例子 hello-jni ,位于E:\\android-ndk-r5\\samples\\hello-jni( 根据具体的安装位置而定 ) 。

    2.运行 cygwin ,输入命令 cd /cygdrive/e/android-ndk-r5/samples/hello-jni ,进入到 E:\\android-ndk-r5\\samples\\hello-jni 目录。

    3.输入 $NDK/ndk-build ,执行成功后,它会自动生成一个 libs 目录,把编译生成的 .so 文件放在里面。 ($NDK是调用我们之前配置好的环境变量, ndk-build 是调用 ndk 的编译程序 )

    4.此时去 hello-jni 的 libs 目录下看有没有生成的 .so 文件,如果有,ndk 就运行正常啦。

参考技术A linux下ndk-bulid编译形成了so文件,在windows环境下的...包的工具才能将android jni 的C/C++的代码编译成库3.android应用程序开发环境: 包括eclipse、java、 android

ADT+NDK搭建jni编译环境

jni是android调用C++编写的库的接口。C++和java的差别不在此文的讨论范畴,另外这里也仅仅是记录下。怎样搭建好开发环境。

首先是下载ADT包和NDK包。

ADT包包括了eclipse。所以不用安装Eclipse。

安装好后。有2种方式来实现编译jniproject。

一种方式是在ADT的菜单windows,属性,build中设置NDK的路径,同一时候在project的属性中,选择默认ndk编译。

第二种方式是在ADT的菜单windows。属性,build中设置NDK的路径。同一时候在系统环境变量中配置NDK_ROOT以及路径。然后在project的属性中,不选择默认NDK。输入编译指令。

 

因为本机没有安装环境。所以无法截图。若有幸被看到此文。有不论什么疑问能够联系我。

 

 

以上是关于java jni 怎么在windows环境中编译成linux下的so文件的主要内容,如果未能解决你的问题,请参考以下文章

ADT+NDK搭建jni编译环境

Windows下JNI的使用教程

5.7 NDK开发

解决JNI在Windows环境下因长路径导致编译失败问题

解决JNI在Windows环境下因长路径导致编译失败问题

Android JNI编程—JNI基础