[Spice-devel] issues linking with openssl 1.1.0

Marc-André Lureau marcandre.lureau at gmail.com
Thu Jan 17 05:46:23 UTC 2019


Hey Iordan

On Thu, Jan 17, 2019 at 3:45 AM i iordanov <iiordanov at gmail.com> wrote:
>
> Hello,
>
> Happy new year!
>
> I tried to build spice-gtk 0.34 and 0.35 with OpenSSL 1.1.0, and I got some linking errors:
>
> jni/src/../libs/deps/x86/root/lib/libspice-client-glib-2.0.a(spice-channel.o):spice-channel.c:function spice_channel_class_intern_init: error: undefined reference to 'SSL_library_init'
> jni/src/../libs/deps/x86/root/lib/libspice-client-glib-2.0.a(spice-channel.o):spice-channel.c:function spice_channel_class_intern_init: error: undefined reference to 'SSL_load_error_strings'
> jni/src/../libs/deps/x86/root/lib/libspice-client-glib-2.0.a(spice-channel.o):spice-channel.c:function spice_channel_coroutine: error: undefined reference to 'SSLv23_method'
> jni/src/../libs/deps/x86/root/lib/libspice-client-glib-2.0.a(spice-channel.o):spice-channel.c:function spice_channel_coroutine: error: undefined reference to 'sk_value'
> jni/src/../libs/deps/x86/root/lib/libspice-client-glib-2.0.a(spice-channel.o):spice-channel.c:function spice_channel_coroutine: error: undefined reference to 'sk_num'
> jni/src/../libs/deps/x86/root/lib/libspice-client-glib-2.0.a(spice-channel.o):spice-channel.c:function spice_channel_coroutine: error: undefined reference to 'sk_pop_free'
> jni/src/../libs/deps/x86/root/lib/libspice-client-glib-2.0.a(ssl_verify.o):ssl_verify.c:function openssl_verify: error: undefined reference to 'sk_num'
> jni/src/../libs/deps/x86/root/lib/libspice-client-glib-2.0.a(ssl_verify.o):ssl_verify.c:function openssl_verify: error: undefined reference to 'sk_value'
> clang++: error: linker command failed with exit code 1 (use -v to see invocation)
> make: *** [obj/local/x86/libspice.so] Error 1
>
> I had to revert to 1.0.2, but wanted to ask - is there a plan to support 1.1.0/1.1.1?
>

Happy new year! :)

It compiles fine against openssl-libs-1.1.1-3.fc29.x86_64

I checked 'SSL_library_init', it is is not exported by the library,
but the header redefines it:

openssl/ssl.h
1098:#  define OpenSSL_add_ssl_algorithms()   SSL_library_init()
1099:#  define SSLeay_add_ssl_algorithms()    SSL_library_init()
1938:#  define SSL_library_init() OPENSSL_init_ssl(0, NULL)

Is this under your own build environment or it can be reproduced on a
known distro?

thanks



-- 
Marc-André Lureau


More information about the Spice-devel mailing list