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

2024-11-01 17:16:01
推荐回答(2个)
回答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

表示生成成功。

回答2:

。。。你编译成.so有何用 拿到linux那里依然是不能用的 得重新编译