如何在Eclipse中如何用cygwin把C文件编译成so文件

如何在Eclipse中如何用cygwin把C文件编译成so文件,第1张

用cygwin把C文件编译成so文件:

1:首先,要准备好一个jni文件夹,里面包含三个文件:

makefile文件:

LOCAL_PATH:=$(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE:=test-jni

LOCAL_SRC_FILES := test-jni.c

include $(BUILD_SHARED_LIBRARY)

如果有多个文件,可能有所不同吧,尚未尝试。

头文件:最好使用javah命令来生成,可见我的上一篇文章;

源文件:根据头文件,完善源码。

2:将jni文件夹拷贝到Android项目目录下

3:运行cygwin,使用CD命令,切换目录到Android项目目录

4:输入命令 $NDK/ndk-build,屏幕显示如下:

$ $NDK/ndk-build

Cygwin         : Generating dependency file converter script

Compile thumb  : test-jni <= test-jni.c

SharedLibrary  : libtest-jni.so

Install        : libtest-jni.so =>libs/armeabi/libtest-jni.so

表示生成成功。

1)首先创建HelloWorld.java文件:

class HelloWorld 

{

    public native void hello()//创建一个native函数,需要用C实现

    static{

        System.loadLibrary("hello") //这里加载的库是hello.so或者hello.dll等,我们使用.so

    }

    public static void main(String[] args) 

    {

        new HelloWorld().hello() 

    }

}

2)将上述文件保存为HelloWorld.java


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11765008.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存