android jni调用静态库,该怎么解决

android jni调用静态库
我将libcurl编译成静态库-libcurl.a。现在我向在jni中调用libcurl.a中的方法。请问如何实现?
JNI C代码:
#include <jni.h>
#include <stdio.h>
#include <stdlib.h>
#include "curl/curl.h"

JNIEXPORT jint JNICALL Java_com_curljni_curljni_curjni(JNIEnv *env, jobject this)
{
 CURL *curl;
  curl = curl_easy_init();
  if(curl) {
  curl_easy_cleanup(curl);
return 1;
  }
return 0;
}

#MK文件:静态库在local_path目录
LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)

#LOCAL_C_INCLUDES := $(LOCAL_PATH)

LOCAL_MODULE := curjni

LOCAL_SRC_FILES := curjni.c


#LOCAL_LDFLAGS = $(LOCAL_PATH)/libcurl.a
LOCAL_LDLIBS := -lz -llog -L$(LOCAL_PATH)

include $(BUILD_SHARED_LIBRARY)

编译错误提示:
$ make APP=curljni2 -B
Android NDK: Building for application 'curljni2'
Compile thumb : curjni <= apps/curljni2/project/jni/curjni.c
SharedLibrary : libcurjni.so
out/apps/curljni2//objs/curjni/curjni.o: In function `Java_com_curljni_curljni_c
urjni':
apps/curljni2/project/jni/curjni.c:13: undefined reference to `curl_easy_init'
apps/curljni2/project/jni/curjni.c:21: undefined reference to `curl_easy_cleanup
'
collect2: ld returned 1 exit status
make: *** [out/apps/curljni2//libcurjni.so] Error 1

Administrator@Luye /cygdrive/D/NDK


------解决方案--------------------
貌似是你的路径错误 2个/,你发现没有 ?在那个mk里面设这的时候注意一下
------解决方案--------------------
似乎 curl = curl_easy_init();curl_easy_cleanup(curl); 没有调用到;

不知引入了#include "curl/curl.h"没有。


好像要在mk文件中,配置点东西!


------解决方案--------------------
undefined reference是连接错误,和引用.h文件没有关系。
Android.mk中
LOCAL_LDFLAGS = $(LOCAL_PATH)/xxxx.a

这个没有作用吗?
------解决方案--------------------
我试了,可以编译通过,生成JNI的.so文件。
我的Android.mk里面是这样的:
LOCAL_LDFLAGS := $(LOCAL_PATH)/lib_test.a

注意两点:
1. 是:=, 不是=.
2. lib_test.a也是交叉编译出来的。

请你再试试。
------解决方案--------------------
NDK中 apps下本身就有一个例子,two-libs,就是引用静态库。
LOCAL_PATH:= $(call my-dir)

# first lib, which will be built statically
#
include $(CLEAR_VARS)

LOCAL_MODULE := libtwolib-first
LOCAL_SRC_FILES := first.c

include $(BUILD_STATIC_LIBRARY)

# second lib, which will depend on and include the first one
#
include $(CLEAR_VARS)

LOCAL_MODULE := libtwolib-second
LOCAL_SRC_FILES := second.c

LOCAL_STATIC_LIBRARIES := libtwolib-first

include $(BUILD_SHARED_LIBRARY)