Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

./configure --with-wolfssl causes error: undefined reference to `DES_set_key' #7085

Closed
joelonsql opened this issue May 17, 2021 · 3 comments
Closed

Comments

@joelonsql
Copy link

@joelonsql joelonsql commented May 17, 2021

Packages installed: fish-common libbrotli-dev libgsasl7-dev libidn2-dev libldap2-dev libnghttp2-dev libowfat-dev libpsl-dev librtmp-dev libwolfssl-dev libzstd-dev libssl-dev

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.2 LTS
Release: 20.04
Codename: focal

./configure --with-wolfssl

configure: Configured to build curl/libcurl:

Host setup: x86_64-pc-linux-gnu
Install prefix: /usr/local
Compiler: gcc
CFLAGS: -Werror-implicit-function-declaration -O2 -Wno-system-headers -pthread
CPPFLAGS: -isystem ${prefix}/include/wolfssl
LDFLAGS:
LIBS: -lnghttp2 -lidn2 -lrtmp -lgsasl -lpsl -lwolfssl -lm -lldap -llber -lzstd -lbrotlidec -lz

curl version: 7.77.0-DEV
SSL: enabled (WolfSSL)
SSH: no (--with-{libssh,libssh2})
zlib: enabled
brotli: enabled (libbrotlidec)
zstd: enabled (libzstd)
GSS-API: no (--with-gssapi)
GSASL: enabled
TLS-SRP: no (--enable-tls-srp)
resolver: POSIX threaded
IPv6: enabled
Unix sockets: enabled
IDN: enabled (libidn2)
Build libcurl: Shared=yes, Static=yes
Built-in manual: enabled
--libcurl option: enabled (--disable-libcurl-option)
Verbose errors: enabled (--disable-verbose)
Code coverage: disabled
SSPI: no (--enable-sspi)
ca cert bundle: /etc/ssl/certs/ca-certificates.crt
ca cert path: no
ca fallback: no
LDAP: enabled (OpenLDAP)
LDAPS: enabled
RTSP: enabled
RTMP: enabled (librtmp)
Metalink: no (--with-libmetalink)
PSL: enabled
Alt-svc: enabled (--disable-alt-svc)
HSTS: enabled (--disable-hsts)
HTTP1: enabled (internal)
HTTP2: enabled (nghttp2)
HTTP3: no (--with-ngtcp2, --with-quiche)
ECH: no (--enable-ech)
Protocols: DICT FILE FTP FTPS GOPHER GOPHERS HTTP HTTPS IMAP IMAPS LDAP LDAPS MQTT POP3 POP3S RTMP RTSP SMB SMBS SMTP SMTPS TELNET TFTP
Features: AsynchDNS GSASL HSTS HTTP2 IDN IPv6 Largefile NTLM NTLM_WB PSL SSL UnixSockets alt-svc brotli libz zstd

/usr/bin/ld: ../lib/.libs/libcurl.so: undefined reference to DES_set_key' /usr/bin/ld: ../lib/.libs/libcurl.so: undefined reference to DES_ecb_encrypt'
/usr/bin/ld: ../lib/.libs/libcurl.so: undefined reference to `DES_set_odd_parity'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1009: curl] Error 1
make[2]: Leaving directory '/home/magicmake/curl/src'
make[1]: *** [Makefile:2168: all-recursive] Error 1
make[1]: Leaving directory '/home/magicmake/curl/src'
make: *** [Makefile:1264: all-recursive] Error 1

What could be the problem here? Am I missing some package?

Many thanks.

@bagder
Copy link
Member

@bagder bagder commented May 17, 2021

You probably didn't enable the OpenSSL API in your wolfssl build?

@bagder
Copy link
Member

@bagder bagder commented May 17, 2021

Ah right, it's not your build but I presume that the one you use doesn't have that enabled and the NTLM code in curl seems to assume that when wolfssl is used.

bagder added a commit that referenced this issue May 18, 2021
... so that we can point out the root of the OpenSSL emulation headers.
Previously this used the '$includedir' variable which is wrong since
that defaults to the dir where the current configure invoke will install
the built libcurl headers: /usr/local by default.

Fixes #7085
Reported-by: Joel Jakobsson
@bagder
Copy link
Member

@bagder bagder commented May 18, 2021

Was a bug in the configure script. Fix in #7087 made my 20.04 build work.

@bagder bagder closed this in 93b3970 May 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

2 participants