cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: Porting libcurl on Android with SSL Support

From: Tancho . <smarkovik_at_gmail.com>
Date: Thu, 5 Jul 2012 14:55:19 +0200

So if I understood correctly I am supposed to add stuff to the standalone
NDK.
I am using Crystax NDK v7b (default google ndk with some extra stuff like
support for wchar_t and wstring, runtime_error, C++11 support etc.. but
it's completely backward compatible. )
so I extracted your zip in the following location

$NDK_PATH/ndk/toolchains/arm-linux-androideabi-4.4.3
the local folder was missing as you suggested, so I put it there. and also
I set my Application.mk to use the 4.4.3 toolchain, next
$./androidconfig (the exported paths with the configure script that I
started this thread with)
and I got the same error?
did I miss something?

I got the same error :

libcurl/obj/local/armeabi/objs/curly/src/tool_paramhlp.o: In function
`checkpasswd':
libcurl/jni/src/tool_paramhlp.c:321: undefined reference to `getpass_r'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function
`Curl_ossl_close_all':
libcurl/jni/lib/ssluse.c:991: undefined reference to `ENGINE_finish'
libcurl/jni/lib/ssluse.c:992: undefined reference to `ENGINE_free'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function
`Curl_ossl_engines_list':
libcurl/jni/lib/ssluse.c:842: undefined reference to `ENGINE_get_first'
libcurl/jni/lib/ssluse.c:842: undefined reference to `ENGINE_get_next'
libcurl/jni/lib/ssluse.c:843: undefined reference to `ENGINE_get_id'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function
`Curl_ossl_set_engine_default':
libcurl/jni/lib/ssluse.c:817: undefined reference to `ENGINE_set_default'
libcurl/jni/lib/ssluse.c:818: undefined reference to `ENGINE_get_id'
libcurl/jni/lib/ssluse.c:822: undefined reference to `ENGINE_get_id'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function
`Curl_ossl_set_engine':
libcurl/jni/lib/ssluse.c:774: undefined reference to `ENGINE_by_id'
libcurl/jni/lib/ssluse.c:790: undefined reference to `ENGINE_finish'
libcurl/jni/lib/ssluse.c:791: undefined reference to `ENGINE_free'
libcurl/jni/lib/ssluse.c:794: undefined reference to `ENGINE_init'
libcurl/jni/lib/ssluse.c:797: undefined reference to `ENGINE_free'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function
`Curl_ossl_cleanup':
libcurl/jni/lib/ssluse.c:724: undefined reference to `ENGINE_cleanup'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function `Curl_ossl_init':
libcurl/jni/lib/ssluse.c:697: undefined reference to
`ENGINE_load_builtin_engines'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function `cert_stuff':
libcurl/jni/lib/ssluse.c:395: undefined reference to `ENGINE_ctrl'
libcurl/jni/lib/ssluse.c:402: undefined reference to `ENGINE_ctrl_cmd'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function
`ossl_connect_step1':
libcurl/jni/lib/ssluse.c:1629: undefined reference to
`SSL_CTX_set_srp_username'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function `cert_stuff':
libcurl/jni/lib/ssluse.c:554: undefined reference to
`ENGINE_load_private_key'
libcurl/obj/local/armeabi/libcurl.a(ssluse.o): In function
`ossl_connect_step1':
libcurl/jni/lib/ssluse.c:1633: undefined reference to
`SSL_CTX_set_srp_password'
collect2: ld returned 1 exit status

Tancho

On Thu, Jul 5, 2012 at 2:29 PM, Tancho . <smarkovik_at_gmail.com> wrote:

> I will, thanks,
> should report back in less than an hour..
> Tancho
>
>
>
> On Thu, Jul 5, 2012 at 2:13 PM, Guenter <lists_at_gknw.net> wrote:
>
>> Hi Tancho,
>> Am 05.07.2012 13:34, schrieb Tancho .:
>>
>> Woow.. Guenter dude,
>>> is it possible that you share the three static libs? like.. libssl,
>>> libcrypro and libcurl (compiled with ssl)?
>>> It would mean so much if you would :)
>>> by the way, I already tried configuring curl (latest official version),
>>> and I did, but the configure script did not disable the openssl engine
>>> stuff..
>>> that's actually my problem...
>>> so can you share the libs?
>>>
>> try these:
>> http://svwe10.itex.at/~**android/curl-android-devel.**tar.bz2<http://svwe10.itex.at/~android/curl-android-devel.tar.bz2>
>> provided that you created the standalone toolchain from NDK then you
>> usually a path like:
>> [/opt]/arm-linux-androideabi-**4.4.3/sysroot/usr
>> there is either no folder 'local', or it is empty; just extract the above
>> archive with:
>> tar xjf curl-android-devel.tar.bz2 -C [/opt]/arm-linux-androideabi-**
>> 4.4.3/sysroot/usr
>> the [/opt] here represents the place where you've stored the toolchain on
>> your box ...
>> now all dependent libs should be automatically found by configure via
>> pkg-config if you create the wrapper I suggested in ./docs/INSTALL ...
>>
>> the archive does not contain libcurl, but I think you should now be able
>> to easily build it yourself. Let me know how it works for ya.
>>
>>
>> Gün.
>>
>>
>>
>> ------------------------------**------------------------------**-------
>> List admin: http://cool.haxx.se/list/**listinfo/curl-library<http://cool.haxx.se/list/listinfo/curl-library>
>> Etiquette: http://curl.haxx.se/mail/**etiquette.html<http://curl.haxx.se/mail/etiquette.html>
>>
>
>

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2012-07-05