[AWS] cannot link with debian 9 and AWS ssl enabled (libssl1.1?)
Björn Lundin
b.f.lundin at gmail.com
Sun Aug 20 12:44:29 CEST 2017
Hi!
Having a production machine on 64 bit debian 8 I got
bnl at prod:~$ apt-cache pkgnames | grep -i libssl | sort
libssl1.0.0
libssl1.0.0-dbg
libssl-dev
libssl-doc
libssl-ocaml
libssl-ocaml-dev
and a dev machine on 64 bit debian 9 with
bnl at tp:~/svn/bnlbot/botstart/bot-1-0/source/ada$ apt-cache pkgnames |
grep libssl | sort
libssl1.0.0
libssl1.0.2
libssl1.0-dev
libssl1.1
libssl-dev
libssl-doc
libssl-ocaml
libssl-ocaml-dev
bnl at tp:~/svn/bnlbot/botstart/bot-1-0/source/ada$
To build AWS with ssl support I set
SOCKET = openssl
in makefile.conf
Building AWS itself works on both debians but using it does not work on
debian 9
[gprbind] greenup_lay_first.bexch
[Ada] greenup_lay_first.ali
[gprbind] markets_sender.bexch
[Ada] markets_sender.ali
gprbuild: "repo" up to date
Link
[link] bot_send.adb
[link] poll.adb
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):
In function `aws__net__ssl__locking__initializeXnn':
aws-net-ssl__openssl.adb:(.text+0x6b0a): undefined reference to
`CRYPTO_set_id_callback'
aws-net-ssl__openssl.adb:(.text+0x6b14): undefined reference to
`CRYPTO_set_locking_callback'
aws-net-ssl__openssl.adb:(.text+0x6b1e): undefined reference to
`CRYPTO_set_dynlock_create_callback'
aws-net-ssl__openssl.adb:(.text+0x6b28): undefined reference to
`CRYPTO_set_dynlock_lock_callback'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):
In function `aws__net__ssl__ciphers':
aws-net-ssl__openssl.adb:(.text+0x7e76): undefined reference to
`SSLv23_method'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):
In function `aws__net__ssl__signature__3':
aws-net-ssl__openssl.adb:(.text+0x9248): undefined reference to
`EVP_MD_CTX_create'
aws-net-ssl__openssl.adb:(.text+0x931e): undefined reference to
`EVP_MD_CTX_destroy'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):
In function `aws__net__ssl__set_accept_state':
aws-net-ssl__openssl.adb:(.text+0xb1aa): undefined reference to
`SSL_set_tmp_rsa_callback'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):
In function `aws__net__ssl__version':
aws-net-ssl__openssl.adb:(.text+0xd9e9): undefined reference to
`SSLeay_version'
aws-net-ssl__openssl.adb:(.text+0xda86): undefined reference to
`SSLeay_version'
aws-net-ssl__openssl.adb:(.text+0xdaa0): undefined reference to
`SSLeay_version'
aws-net-ssl__openssl.adb:(.text+0xdaba): undefined reference to
`SSLeay_version'
aws-net-ssl__openssl.adb:(.text+0xdad4): undefined reference to
`SSLeay_version'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):
In function `aws__net__ssl___elabb':
aws-net-ssl__openssl.adb:(.text+0xe177): undefined reference to
`CRYPTO_num_locks'
aws-net-ssl__openssl.adb:(.text+0xe2ff): undefined reference to
`SSL_load_error_strings'
aws-net-ssl__openssl.adb:(.text+0xe304): undefined reference to
`SSL_library_init'
aws-net-ssl__openssl.adb:(.text+0xe31e): undefined reference to
`SSL_CTX_get_ex_new_index'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):
In function `aws__net__ssl___elabs':
aws-net-ssl__openssl.adb:(.text+0xe492): undefined reference to `SSLeay'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):
In function `aws__net__ssl__locking__initializeXnn':
aws-net-ssl__openssl.adb:(.text+0x6b36): undefined reference to
`CRYPTO_set_dynlock_destroy_callback'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):(.rodata+0x16c0):
undefined reference to `SSLv23_method'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):(.rodata+0x16c8):
undefined reference to `SSLv23_server_method'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):(.rodata+0x16d0):
undefined reference to `SSLv23_client_method'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):(.rodata+0x1720):
undefined reference to `SSLv23_method'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):(.rodata+0x1728):
undefined reference to `SSLv23_server_method'
/usr/local/ada/aws/gpl2017_ssl/lib/aws/libaws.a(aws-net-ssl__openssl.o):(.rodata+0x1730):
undefined reference to `SSLv23_client_method'
collect2: error: ld returned 1 exit status
gprbuild: link of poll.adb failed
makefile:67: receptet för målet ”adabot” misslyckades
make[1]: *** [adabot] Fel 4
make[1]: Lämnar katalogen
”/home/bnl/svn/bnlbot/botstart/bot-1-0/source/ada”
bnl at tp:~/svn/bnlbot/botstart/bot-1-0/source/ada$ uname -a
Linux tp 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u2 (2017-06-26) x86_64
GNU/Linux
bnl at tp:~/svn/bnlbot/botstart/bot-1-0/source/ada$
bnl at tp:~/svn/bnlbot/botstart/bot-1-0/source/ada$ gnatls -v
GNATLS GPL 2017 (20170515-63)
Copyright (C) 1997-2017, Free Software Foundation, Inc.
Source Search Path:
<Current_Directory>
/usr/local/ada/gpl2017/gnatx64/lib/gcc/x86_64-pc-linux-gnu/6.3.1/rts-native/adainclude
Object Search Path:
<Current_Directory>
/usr/local/ada/gpl2017/gnatx64/lib/gcc/x86_64-pc-linux-gnu/6.3.1/rts-native/adalib
Project Search Path:
<Current_Directory>
/usr/local/ada/aws/gpl2017_ssl/share/gpr
/usr/local/ada/gpl2017/gnatx64/lib/gnat
/usr/local/ada/gpl2017/share/gpr
/usr/local/ada/gpl2017/lib/gnat
/usr/local/ada/gpl2017/gnatx64/x86_64-pc-linux-gnu/lib/gnat
/usr/local/ada/gpl2017/gnatx64/x86_64-pc-linux-gnu/share/gpr
/usr/local/ada/gpl2017/gnatx64/share/gpr
/usr/local/ada/gpl2017/gnatx64/lib/gnat
Looking around internet it seems like openssl changed a bit between 1.0
and 1.1
How is this best handled ?
--
-- Björn
More information about the AWS
mailing list