libcurl编译

bailu1121 2011-03-30 05:19:51
In file included from apps/curljni2/project/jni/setup_once.h:66,
from apps/curljni2/project/jni/setup.h:583,
from apps/curljni2/project/jni/curl_memrchr.c:23:
build/platforms/android-3/arch-arm/usr/include/time.h:92: warning: function decl
aration isn't a prototype
SharedLibrary : libcurl.so
out/apps/curljni2//objs/curl/base64.o: In function `decodeQuantum':
apps/curljni2/project/jni/base64.c:73: undefined reference to `curlx_ultouc'
apps/curljni2/project/jni/base64.c:75: undefined reference to `curlx_ultouc'
apps/curljni2/project/jni/base64.c:77: undefined reference to `curlx_ultouc'
out/apps/curljni2//objs/curl/hostip.o: In function `Curl_resolv_timeout':
apps/curljni2/project/jni/hostip.c:601: undefined reference to `curlx_sltoui'
out/apps/curljni2//objs/curl/http.o: In function `Curl_http_readwrite_headers':
apps/curljni2/project/jni/http.c:3754: undefined reference to `Curl_rtsp_parsehe
ader'
out/apps/curljni2//objs/curl/http.o: In function `Curl_http':
apps/curljni2/project/jni/http.c:2443: undefined reference to `curlx_sotouz'
out/apps/curljni2//objs/curl/ftp.o: In function `ftp_state_pwd':
apps/curljni2/project/jni/ftp.c:619: undefined reference to `Curl_pp_sendf'
out/apps/curljni2//objs/curl/ftp.o: In function `ftp_state_loggedin':
apps/curljni2/project/jni/ftp.c:2309: undefined reference to `Curl_pp_sendf'
out/apps/curljni2//objs/curl/ftp.o: In function `ftp_state_user':
apps/curljni2/project/jni/ftp.c:606: undefined reference to `Curl_pp_sendf'
out/apps/curljni2//objs/curl/ftp.o: In function `ftp_easy_statemach':
apps/curljni2/project/jni/ftp.c:2831: undefined reference to `Curl_pp_easy_state
mach'
out/apps/curljni2//objs/curl/ftp.o: In function `ftp_disconnect':
apps/curljni2/project/jni/ftp.c:3880: undefined reference to `Curl_pp_disco、



out/apps/curljni2//objs/curl/content_encoding.o: In function `Curl_unencode_defl
ate_write':
apps/curljni2/project/jni/content_encoding.c:169: undefined reference to `inflat
eInit_'
out/apps/curljni2//objs/curl/parsedate.o: In function `Curl_parsedate':
apps/curljni2/project/jni/parsedate.c:382: undefined reference to `curlx_sltosi'

collect2: ld returned 1 exit status
make: *** [out/apps/curljni2//libcurl.so] Error 1
...全文
427 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ltm_3 2011-05-20
  • 打赏
  • 举报
回复
能请教一下么,为什么我还是编译不成功,我用了你的config文件和jni文件还是不行
bailu1321 2011-04-01
  • 打赏
  • 举报
回复
/* Define to 1 if you have the <limits.h> header file. */
#define HAVE_LIMITS_H 1
#define HAVE_LL 1
#define HAVE_LOCALE_H 1
#define HAVE_LOCALTIME_R 1
#define HAVE_LONGLONG 1
#define HAVE_MEMORY_H 1
#define HAVE_MSG_NOSIGNAL 1
#define HAVE_NETDB_H 1
#define HAVE_NETINET_IN_H 1
#define HAVE_NETINET_TCP_H 1
#define HAVE_NET_IF_H 1
#define HAVE_OPENSSL_CRYPTO_H 1
#define HAVE_OPENSSL_ERR_H 1
#define HAVE_OPENSSL_PEM_H 1
#define HAVE_OPENSSL_PKCS12_H 1
#define HAVE_OPENSSL_RSA_H 1
#define HAVE_OPENSSL_SSL_H 1
#define HAVE_OPENSSL_X509_H 1
#define HAVE_PERROR 1
#define HAVE_PIPE 1
#define HAVE_POLL 1
#define HAVE_POLL_FINE 1
#define HAVE_POLL_H 1
#define HAVE_PWD_H 1
#define HAVE_RAND_EGD 1
#define HAVE_RAND_STATUS 1
#define HAVE_RECV 1
#define HAVE_RECVFROM 1
#define HAVE_SELECT 1
#define HAVE_SEND 1
#define HAVE_SETJMP_H 1
#define HAVE_SETLOCALE 1
#define HAVE_SETMODE 1
#define HAVE_SETRLIMIT 1
#define HAVE_SETSOCKOPT 1
#define HAVE_SIGACTION 1
#define HAVE_SIGINTERRUPT 1
#define HAVE_SIGNAL 1
#define HAVE_SIGNAL_H 1
#define HAVE_SIGSETJMP 1
#define HAVE_SIG_ATOMIC_T 1
#define HAVE_SOCKET 1
#define HAVE_SSL_GET_SHUTDOWN 1
#define HAVE_STDBOOL_H 1
#define HAVE_STDINT_H 1
#define HAVE_STDIO_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRCASECMP 1
#define HAVE_STRCASESTR 1
#define HAVE_STRDUP 1
#define HAVE_STRERROR_R 1
#define HAVE_STRINGS_H 1
#define HAVE_STRING_H 1
#define HAVE_STRLCAT 1
#define HAVE_STRNCASECMP 1
#define HAVE_STRSTR 1
#define HAVE_STRTOK_R 1
#define HAVE_STRTOLL 1
#define HAVE_STRUCT_SOCKADDR_STORAGE 1
#define HAVE_STRUCT_TIMEVAL 1
#define HAVE_SYS_IOCTL_H 1
#define HAVE_SYS_PARAM_H 1
#define HAVE_SYS_POLL_H 1
#define HAVE_SYS_RESOURCE_H 1
#define HAVE_SYS_SELECT_H 1
#define HAVE_SYS_SOCKET_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_SYS_TIME_H 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_SYS_UIO_H 1
#define HAVE_SYS_UN_H 1
#define HAVE_SYS_UTIME_H 1
#define HAVE_TERMIOS_H 1
#define HAVE_TERMIO_H 1
#define HAVE_TIME_H 1
#define HAVE_TLD_STRERROR 1
#define HAVE_UNAME 1
#define HAVE_UNISTD_H 1
#define HAVE_UTIME 1
#define HAVE_UTIME_H 1
#define HAVE_VARIADIC_MACROS_C99 1
#define HAVE_VARIADIC_MACROS_GCC 1
#define HAVE_WRITABLE_ARGV 1
#define HAVE_WRITEV 1
#define HAVE_ZLIB_H 1
#define LT_OBJDIR ".libs/"
#define OS "i686-pc-cygwin"
#define PACKAGE "curl"
#define PACKAGE_BUGREPORT "a suitable curl mailing list: http://curl.haxx.se/mail/"
#define PACKAGE_NAME "curl"
#define PACKAGE_STRING "curl -"
#define PACKAGE_TARNAME "curl"
#define PACKAGE_URL ""
#define PACKAGE_VERSION "-"
#define RANDOM_FILE "/dev/urandom"
#define RECVFROM_TYPE_ARG1 int
#define RECVFROM_TYPE_ARG2 void
#define RECVFROM_TYPE_ARG2_IS_VOID 1
#define RECVFROM_TYPE_ARG3 size_t
#define RECVFROM_TYPE_ARG4 int
#define RECVFROM_TYPE_ARG5 struct sockaddr
#define RECVFROM_TYPE_ARG6 socklen_t
#define RECVFROM_TYPE_RETV int
#define RECV_TYPE_ARG1 int
#define RECV_TYPE_ARG2 void *
#define RECV_TYPE_ARG3 size_t
#define RECV_TYPE_ARG4 int
#define RECV_TYPE_RETV int
#define RETSIGTYPE void
#define SELECT_QUAL_ARG5
#define SELECT_TYPE_ARG1 int

/* Define to the type of args 2, 3 and 4 for select. */
#define SELECT_TYPE_ARG234 fd_set *

/* Define to the type of arg 5 for select. */
#define SELECT_TYPE_ARG5 struct timeval *

/* Define to the function return type for select. */
#define SELECT_TYPE_RETV int

/* Define to the type qualifier of arg 2 for send. */
#define SEND_QUAL_ARG2 const

/* Define to the type of arg 1 for send. */
#define SEND_TYPE_ARG1 int

/* Define to the type of arg 2 for send. */
#define SEND_TYPE_ARG2 void *

/* Define to the type of arg 3 for send. */
#define SEND_TYPE_ARG3 size_t

/* Define to the type of arg 4 for send. */
#define SEND_TYPE_ARG4 int

/* Define to the function return type for send. */
#define SEND_TYPE_RETV int

/* The size of `int', as computed by sizeof. */
#define SIZEOF_INT 4

/* The size of `long', as computed by sizeof. */
#define SIZEOF_LONG 4

/* The size of `off_t', as computed by sizeof. */
#define SIZEOF_OFF_T 8

/* The size of `short', as computed by sizeof. */
#define SIZEOF_SHORT 2

/* The size of `size_t', as computed by sizeof. */
#define SIZEOF_SIZE_T 4

/* The size of `time_t', as computed by sizeof. */
#define SIZEOF_TIME_T 4

/* The size of `void*', as computed by sizeof. */
#define SIZEOF_VOIDP 4

/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1

/* Define to the type of arg 3 for strerror_r. */
#define STRERROR_R_TYPE_ARG3 size_t

/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#define TIME_WITH_SYS_TIME 1

/* If you want to build curl with the built-in manual */
#define USE_MANUAL 1

/* if OpenSSL is in use */
#define USE_OPENSSL 1
/* Version number of package */
#define VERSION "7.21.4"

/* Define to 1 if OS is AIX. */
#ifndef _ALL_SOURCE
/* # undef _ALL_SOURCE */
#endif
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
/* #undef inline */
#endif
bailu1321 2011-04-01
  • 打赏
  • 举报
回复
curl_config.h内容:长度有限山了很多关闭的宏:

#define GETNAMEINFO_QUAL_ARG1 const
#define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
#define GETNAMEINFO_TYPE_ARG2 socklen_t
#define GETNAMEINFO_TYPE_ARG46 int
#define GETNAMEINFO_TYPE_ARG7 int
#define HAVE_ALARM 1
#define HAVE_ALLOCA_H 1
#define HAVE_ARPA_INET_H 1
#define HAVE_ARPA_TFTP_H 1
#define HAVE_ASSERT_H 1
#define HAVE_BASENAME 1
#define HAVE_BOOL_T 1
#define HAVE_CLOCK_GETTIME_MONOTONIC 1
#define HAVE_CONNECT 1
#define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
#define HAVE_DLFCN_H 1
#define HAVE_ENGINE_CLEANUP 1
#define HAVE_ENGINE_LOAD_BUILTIN_ENGINES 1
#define HAVE_ERRNO_H 1
#define HAVE_FCNTL 1
#define HAVE_FCNTL_H 1
#define HAVE_FCNTL_O_NONBLOCK 1

/* Define to 1 if you have the fdopen function. */
#define HAVE_FDOPEN 1

/* Define to 1 if you have the `fork' function. */
#define HAVE_FORK 1

/* Define to 1 if you have the freeaddrinfo function. */
#define HAVE_FREEADDRINFO 1

/* Define to 1 if you have the freeifaddrs function. */
#define HAVE_FREEIFADDRS 1

/* Define to 1 if you have the fsetxattr function. */
/* #undef HAVE_FSETXATTR */

/* fsetxattr() takes 5 args */
/* #undef HAVE_FSETXATTR_5 */

/* fsetxattr() takes 6 args */
/* #undef HAVE_FSETXATTR_6 */

/* Define to 1 if you have the ftruncate function. */
#define HAVE_FTRUNCATE 1

/* Define to 1 if you have a working getaddrinfo function. */
#define HAVE_GETADDRINFO 1

/* Define to 1 if the getaddrinfo function is threadsafe. */
/* #undef HAVE_GETADDRINFO_THREADSAFE */

/* Define to 1 if you have the `geteuid' function. */
#define HAVE_GETEUID 1

/* Define to 1 if you have the gethostbyaddr function. */
#define HAVE_GETHOSTBYADDR 1

/* Define to 1 if you have the gethostbyaddr_r function. */
/* #undef HAVE_GETHOSTBYADDR_R */

/* gethostbyaddr_r() takes 5 args */
/* #undef HAVE_GETHOSTBYADDR_R_5 */

/* gethostbyaddr_r() takes 7 args */
/* #undef HAVE_GETHOSTBYADDR_R_7 */

/* gethostbyaddr_r() takes 8 args */
/* #undef HAVE_GETHOSTBYADDR_R_8 */

/* Define to 1 if you have the gethostbyname function. */
#define HAVE_GETHOSTBYNAME 1

/* Define to 1 if you have the gethostbyname_r function. */
/* #undef HAVE_GETHOSTBYNAME_R */

/* gethostbyname_r() takes 3 args */
/* #undef HAVE_GETHOSTBYNAME_R_3 */

/* gethostbyname_r() takes 5 args */
/* #undef HAVE_GETHOSTBYNAME_R_5 */

/* gethostbyname_r() takes 6 args */
/* #undef HAVE_GETHOSTBYNAME_R_6 */

/* Define to 1 if you have the gethostname function. */
#define HAVE_GETHOSTNAME 1

/* Define to 1 if you have a working getifaddrs function. */
//#define HAVE_GETIFADDRS 1

/* Define to 1 if you have the getnameinfo function. */
#define HAVE_GETNAMEINFO 1

/* Define to 1 if you have the `getpass_r' function. */
/* #undef HAVE_GETPASS_R */

/* Define to 1 if you have the `getppid' function. */
#define HAVE_GETPPID 1

/* Define to 1 if you have the `getprotobyname' function. */
#define HAVE_GETPROTOBYNAME 1

/* Define to 1 if you have the `getpwuid' function. */
#define HAVE_GETPWUID 1

/* Define to 1 if you have the `getrlimit' function. */
#define HAVE_GETRLIMIT 1

/* Define to 1 if you have the getservbyport_r function. */
/* #undef HAVE_GETSERVBYPORT_R */

/* Define to 1 if you have the `gettimeofday' function. */
#define HAVE_GETTIMEOFDAY 1

/* Define to 1 if you have a working glibc-style strerror_r function. */
#define HAVE_GLIBC_STRERROR_R 1

/* Define to 1 if you have a working gmtime_r function. */
#define HAVE_GMTIME_R 1

/* if you have the function gnutls_srp_verifier */
/* #undef HAVE_GNUTLS_SRP */

/* if you have the gssapi libraries */
/* #undef HAVE_GSSAPI */

/* Define to 1 if you have the <gssapi/gssapi_generic.h> header file. */
/* #undef HAVE_GSSAPI_GSSAPI_GENERIC_H */

/* Define to 1 if you have the <gssapi/gssapi.h> header file. */
/* #undef HAVE_GSSAPI_GSSAPI_H */

/* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */
/* #undef HAVE_GSSAPI_GSSAPI_KRB5_H */

/* if you have the GNU gssapi libraries */
/* #undef HAVE_GSSGNU */

/* if you have the Heimdal gssapi libraries */
/* #undef HAVE_GSSHEIMDAL */

/* if you have the MIT gssapi libraries */
/* #undef HAVE_GSSMIT */

/* Define to 1 if you have the `idna_strerror' function. */
#define HAVE_IDNA_STRERROR 1

/* Define to 1 if you have the `idn_free' function. */
#define HAVE_IDN_FREE 1

/* Define to 1 if you have the <idn-free.h> header file. */
//#define HAVE_IDN_FREE_H 1

/* Define to 1 if you have the <ifaddrs.h> header file. */
//#define HAVE_IFADDRS_H 1

/* Define to 1 if you have the `inet_addr' function. */
#define HAVE_INET_ADDR 1

/* Define to 1 if you have the inet_ntoa_r function. */
/* #undef HAVE_INET_NTOA_R */

/* inet_ntoa_r() takes 2 args */
/* #undef HAVE_INET_NTOA_R_2 */

/* inet_ntoa_r() takes 3 args */
/* #undef HAVE_INET_NTOA_R_3 */

/* Define to 1 if you have a IPv6 capable working inet_ntop function. */
#define HAVE_INET_NTOP 1

/* Define to 1 if you have a IPv6 capable working inet_pton function. */
#define HAVE_INET_PTON 1

/* Define to 1 if you have the <inttypes.h> header file. */
#define HAVE_INTTYPES_H 1

/* Define to 1 if you have the ioctl function. */
//#define HAVE_IOCTL 1

/* Define to 1 if you have the ioctlsocket function. */
/* #undef HAVE_IOCTLSOCKET */

/* Define to 1 if you have the IoctlSocket camel case function. */
/* #undef HAVE_IOCTLSOCKET_CAMEL */

/* Define to 1 if you have a working IoctlSocket camel case FIONBIO function.
*/
/* #undef HAVE_IOCTLSOCKET_CAMEL_FIONBIO */

/* Define to 1 if you have a working ioctlsocket FIONBIO function. */
/* #undef HAVE_IOCTLSOCKET_FIONBIO */

/* Define to 1 if you have a working ioctl FIONBIO function. */
#define HAVE_IOCTL_FIONBIO 1

/* Define to 1 if you have a working ioctl SIOCGIFADDR function. */
#define HAVE_IOCTL_SIOCGIFADDR 1

/* Define to 1 if you have the <io.h> header file. */
#define HAVE_IO_H 1

/* if you have the Kerberos4 libraries (including -ldes) */
/* #undef HAVE_KRB4 */

/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */
/* #undef HAVE_KRB_GET_OUR_IP_FOR_REALM */

/* Define to 1 if you have the <krb.h> header file. */
/* #undef HAVE_KRB_H */

/* Define to 1 if you have the lber.h header file. */
#define HAVE_LBER_H 1

/* Define to 1 if you have the ldapssl.h header file. */
/* #undef HAVE_LDAPSSL_H */

/* Define to 1 if you have the ldap.h header file. */
#define HAVE_LDAP_H 1

/* Define to 1 if you have the `ldap_init_fd' function. */
/* #undef HAVE_LDAP_INIT_FD */

/* Use LDAPS implementation */
#define HAVE_LDAP_SSL 1

/* Define to 1 if you have the ldap_ssl.h header file. */
/* #undef HAVE_LDAP_SSL_H */

/* Define to 1 if you have the `ldap_url_parse' function. */
#define HAVE_LDAP_URL_PARSE 1

/* Define to 1 if you have the `gcrypt' library (-lgcrypt). */
/* #undef HAVE_LIBGCRYPT */

/* Define to 1 if you have the <libgen.h> header file. */
#define HAVE_LIBGEN_H 1

/* Define to 1 if you have the `idn' library (-lidn). */
//#define HAVE_LIBIDN 1

/* Define to 1 if you have the `resolv' library (-lresolv). */
/* #undef HAVE_LIBRESOLV */

/* Define to 1 if you have the `resolve' library (-lresolve). */
/* #undef HAVE_LIBRESOLVE */

/* Define to 1 if you have the <librtmp/rtmp.h> header file. */
/* #undef HAVE_LIBRTMP_RTMP_H */

/* Define to 1 if you have the `ssh2' library (-lssh2). */
#define HAVE_LIBSSH2 1

/* Define to 1 if you have the `libssh2_exit' function. */
/* #undef HAVE_LIBSSH2_EXIT */

/* Define to 1 if you have the <libssh2.h> header file. */
//#define HAVE_LIBSSH2_H 1

/* Define to 1 if you have the `libssh2_init' function. */
/* #undef HAVE_LIBSSH2_INIT */

/* Define to 1 if you have the `libssh2_scp_send64' function. */
/* #undef HAVE_LIBSSH2_SCP_SEND64 */

/* Define to 1 if you have the `libssh2_session_handshake' function. */
/* #undef HAVE_LIBSSH2_SESSION_HANDSHAKE */

/* Define to 1 if you have the `libssh2_version' function. */
/* #undef HAVE_LIBSSH2_VERSION */

/* Define to 1 if you have the `ssl' library (-lssl). */
#define HAVE_LIBSSL 1

bailu1321 2011-04-01
  • 打赏
  • 举报
回复
我编译成功的MK文件:
其中ydxpro.c是自己实现的jni接口方法:
LOCAL_PATH:= $(call my-dir)

common_CFLAGS := -Wpointer-arith -Wwrite-strings -Wunused -Winline \
-Wnested-externs -Wmissing-declarations -Wmissing-prototypes -Wno-long-long \
-Wfloat-equal -Wno-multichar -Wsign-compare -Wno-format-nonliteral \
-Wendif-labels -Wstrict-prototypes -Wdeclaration-after-statement \
-Wno-system-headers -DHAVE_CONFIG_H \

include $(CLEAR_VARS)

LOCAL_SRC_FILES := axtls.c base64.c connect.c content_encoding.c \
cookie.c curl_addrinfo.c curl_fnmatch.c curl_gethostname.c curl_memrchr.c curl_rand.c curl_rtmp.c curl_sspi.c curl_threads.c dict.c easy.c escape.c file.c fileinfo.c formdata.c ftp.c\
ftplistparser.c getenv.c getinfo.c gopher.c gtls.c hash.c hmac.c hostares.c hostasyn.c hostip4.c hostip6.c hostip.c hostsyn.c hostthre.c http.c http_chunks.c http_digest.c \
http_negotiate.c http_negotiate_sspi.c http_ntlm.c idn_win32.c if2ip.c imap.c inet_ntop.c inet_pton.c krb4.c krb5.c ldap.c llist.c md4.c md5.c memdebug.c mprintf.c multi.c netrc.c \
nonblock.c nss.c openldap.c parsedate.c pingpong.c polarssl.c pop3.c progress.c qssl.c rawstr.c rtsp.c security.c select.c sendf.c share.c slist.c smtp.c\
socks.c socks_gssapi.c socks_sspi.c speedcheck.c splay.c ssh.c sslgen.c ssluse.c strdup.c strequal.c strerror.c strtok.c strtoofft.c telnet.c tftp.c\
timeval.c transfer.c url.c version.c warnless.c wildcard.c ydxpro.c \

LOCAL_CFLAGS += $(common_CFLAGS)
LOCAL_C_INCLUDES += $(LOCAL_PATH)/include/



LOCAL_MODULE:= ydxjni

include $(BUILD_SHARED_LIBRARY)
#include $(BUILD_STATIC_LIBRARY)

bailu1121 2011-03-31
  • 打赏
  • 举报
回复
Compile thumb : curl <= apps/curljni2/project/jni/curl_sspi.c
Compile thumb : curl <= apps/curljni2/project/jni/slist.c
Compile thumb : curl <= apps/curljni2/project/jni/nonblock.c
Compile thumb : curl <= apps/curljni2/project/jni/curl_memrchr.c
SharedLibrary : libcurl.so
out/apps/curljni2//objs/curl/base64.o: In function `decodeQuantum':
apps/curljni2/project/jni/base64.c:73: undefined reference to `curlx_ultouc'
apps/curljni2/project/jni/base64.c:75: undefined reference to `curlx_ultouc'
apps/curljni2/project/jni/base64.c:77: undefined reference to `curlx_ultouc'
out/apps/curljni2//objs/curl/hostip.o: In function `Curl_resolv_timeout':
apps/curljni2/project/jni/hostip.c:601: undefined reference to `curlx_sltoui'
out/apps/curljni2//objs/curl/http.o: In function `Curl_http_readwrite_headers':
apps/curljni2/project/jni/http.c:3754: undefined reference to `Curl_rtsp_parsehe
ader'
这个错误是什么原因啊?
静态库可以编译成功,但是编译成动态库就会出问题。
bailu1121 2011-03-30
  • 打赏
  • 举报
回复
大侠们帮忙?
Android NDK: Building for application 'jni'
SharedLibrary : libcurjni.so
out/apps/jni//libcurl.a(multi.o): In function `curl_multi_info_read':
apps/curljni2/project/jni/multi.c:1846: undefined reference to `curlx_uztosi'
out/apps/jni//libcurl.a(multi.o): In function `curl_multi_perform':
apps/curljni2/project/jni/multi.c:1699: undefined reference to `Curl_wildcard_in
it'
apps/curljni2/project/jni/multi.c:1712: undefined reference to `Curl_wildcard_dt
or'
out/apps/jni//libcurl.a(hostip.o): In function `Curl_resolv_timeout':
apps/curljni2/project/jni/hostip.c:601: undefined reference to `curlx_sltoui'
out/apps/jni//libcurl.a(http.o): In function `Curl_http_readwrite_headers':
apps/curljni2/project/jni/http.c:3754: undefined reference to `Curl_rtsp_parsehe
ader'
out/apps/jni//libcurl.a(http.o): In function `Curl_http':
apps/curljni2/project/jni/http.c:2443: undefined reference to `curlx_sotouz'
out/apps/jni//libcurl.a(url.o): In function `parse_remote_port':
apps/curljni2/project/jni/url.c:4454: undefined reference to `curlx_ultous'
out/apps/jni//libcurl.a(url.o): In function `Curl_setopt':
apps/curljni2/project/jni/url.c:2376: undefined reference to `curlx_sltoui'
apps/curljni2/project/jni/url.c:2027: undefined reference to `curlx_sltosi'
编译成静态库再通过jni引用还是有问题。不知道怎么解决?
bailu1121 2011-03-30
  • 打赏
  • 举报
回复
我的静态库能编译成功,编译动态库就不行。
还有In file included from apps/curljni2/project/jni/setup_once.h:66,
from apps/curljni2/project/jni/setup.h:583,
from apps/curljni2/project/jni/curl_memrchr.c:23:
build/platforms/android-3/arch-arm/usr/include/time.h:92: warning: function decl
aration isn't a prototype
SharedLibrary : libcurl.so
应该是编译完了。但是生成动态库时出问题了。
儿大不由爷 2011-03-30
  • 打赏
  • 举报
回复
libcurl编译首先要配置,编译arm版本。

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧