[CMake] Linker error when building 3.8.0-rc4 on Linux

Alan W. Irwin irwin at beluga.phys.uvic.ca
Fri Mar 31 05:54:48 EDT 2017


On 2017-03-31 09:12+0200 Nils Gladitz wrote:

> On 03/31/2017 09:04 AM, ウルヰ wrote:
>
>>> To disable OpenSSL e.g. "cmake ... -DCMAKE_USE_OPENSSL=false" or 
>>> "bootstrap
>>> ... --  -DCMAKE_USE_OPENSSL=false".
>> What would be the ramifications of building CMake without OpenSSL?
>
> As far as I am aware it would mean no "https://" support in curl which would 
> mean no "https://" support in e.g. file(DOWNLOAD) and CTest submissions.

Hi Nils:

And use of ExternalProject_Add, etc.  In other words, this is a pretty
crippling restriction for users with Linux distributions (such as the
quite recent Ubuntu 2016.10 of the original poster) that do not yet
give access to libssl version 1.1.0 (the oldest version of libssl
where HMAC_CTX_new() and HMAC_CTX_free() are available according to
your previous post).

@ The original poster, ウルヰ <tkook11 at gmail.com> (whose real name I do not know because he obviously
did not use the normal UTF-8 encoding for his mail address name):

I suggest you try the experiment of using the system version of
libcurl instead (which also supplies SSL capability). For example, my
Linux distribution is Debian Stable which only installs libssl 1.0.1.
And for that case when I tried the bootstrap method with the
--system-curl option (the usual way I build cmake), I do not confirm
your linking issue.  So my expectation is you will also avoid that
linking issue on Ubuntu 2016.10 if you use that bootstrap option or a
similar system libcurl option for the non-bootstrap case.

@Nils:

Even if the original poster finds the suggested workaround (of using
the system version of libcurl rather than system version of
libopenssl) works to provide key CMake SSL functionality, on general
principles (because Linux distribution support for libssl version
1.1.0 is obviously not widespread at the current time), I would
strongly suggest CMake developers drop use of HMAC_CTX_new() and
HMAC_CTX_free() throughout CMake for the final version of CMake-3.8.0.

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__________________________

Linux-powered Science
__________________________


More information about the CMake mailing list