curl / Mailing Lists / curl-library / Single Mail
Buy commercial curl support. We help you work out your issues, debug your libcurl applications, use the API, port to new platforms, add new features and more. With a team lead by the curl founder Daniel himself.

Re: OpenSSL 1.x support?

From: Henrik Holst via curl-library <curl-library_at_lists.haxx.se>
Date: Sat, 8 Jun 2024 04:04:24 +0200

done by the m4 macro m4/curl-compilers.m4

with this stated reason:

dnl CURL_CONVERT_INCLUDE_TO_ISYSTEM
dnl -------------------------------------------------
dnl Changes standard include paths present in CFLAGS
dnl and CPPFLAGS into isystem include paths. This is
dnl done to prevent GNUC from generating warnings on
dnl headers from these locations, although on ancient
dnl GNUC versions these warnings are not silenced.

/HH

Den lör 8 juni 2024 kl 03:57 skrev Alexander Dyagilev <alervdvcw_at_gmail.com>:

> I've found the reason. It's caused by using -isystem flag. I've patched
> configure script to disable it and was able to successfully build curl with
> openssl 1.
> In my system, in clang system include directories, there is
> /usr/local/include/openssl installed (version OpenSSL 3.1.3 19 Sep 2023).
> So, clang was using it instead of the path I provided. Culprit - this
> isystem flag.
> So, is it curl build script bug? Why is it using this flag?
>
> On Sat, Jun 8, 2024 at 5:39 AM Henrik Holst <henrik.holst_at_millistream.com>
> wrote:
>
>> all of those missing symbols are functions added in OpenSSL 3.0 and the
>> ones used directly by curl (such as X509_STORE_load_path) are all behind
>> ifdefs that check for 3.0 so it sounds like your build configuration is
>> finding the 3.0 include files but the 1.x libs
>>
>> /HH
>>
>> Den lör 8 juni 2024 kl 00:20 skrev Alexander Dyagilev via curl-library <
>> curl-library_at_lists.haxx.se>:
>>
>>> Hello,
>>>
>>> Does libcurl support OpenSSL 1.x?
>>>
>>> I'm trying to build it under macOS and getting the following linker
>>> errors:
>>>
>>> Undefined symbols for architecture x86_64:
>>> "_EVP_PKEY_get0_type_name", referenced from:
>>> _ossl_connect_common in libcurl.a(libcurl_la-openssl.o)
>>> "_EVP_PKEY_get_bits", referenced from:
>>> _ossl_connect_common in libcurl.a(libcurl_la-openssl.o)
>>> "_EVP_PKEY_get_bn_param", referenced from:
>>> _Curl_ossl_certchain in libcurl.a(libcurl_la-openssl.o)
>>> "_EVP_PKEY_get_group_name", referenced from:
>>> _ossl_connect_common in libcurl.a(libcurl_la-openssl.o)
>>> "_EVP_PKEY_get_id", referenced from:
>>> _Curl_ossl_certchain in libcurl.a(libcurl_la-openssl.o)
>>> _cert_stuff in libcurl.a(libcurl_la-openssl.o)
>>> "_EVP_PKEY_get_security_bits", referenced from:
>>> _ossl_connect_common in libcurl.a(libcurl_la-openssl.o)
>>> "_SSL_get1_peer_certificate", referenced from:
>>> _ossl_connect_common in libcurl.a(libcurl_la-openssl.o)
>>> "_X509_STORE_load_file", referenced from:
>>> _Curl_ssl_setup_x509_store in libcurl.a(libcurl_la-openssl.o)
>>> "_X509_STORE_load_path", referenced from:
>>> _Curl_ssl_setup_x509_store in libcurl.a(libcurl_la-openssl.o)
>>>
>>> Builds fine when I build it with OpenSSL 3.x.
>>>
>>> If it's not supported, what is the last version which does have support?
>>> --
>>> Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
>>> Etiquette: https://curl.se/mail/etiquette.html
>>>
>>


-- 
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html
Received on 2024-06-08