Project

General

Profile

Actions

Bug #6325

open

Can't find OpenSSL on Windows

Added by Smart Networks about 6 years ago. Updated about 6 years ago.

Status:
Feedback
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
04/05/2018
Due date:
% Done:

0%

Estimated time:

Description

Latest OpenSSL version built according https://github.com/openssl/openssl/blob/master/NOTES.WIN

Static build produce:

  • prefix/lib/libcrypto.lib
  • prefix/lib/libssl.lib

WtFindSsl.txt can't find it:

Looking for ssl: ssleay32MD;ssleay32, libeay32MD;libeay32
Disabling crypto support (Auth::SHA1HashFunction, HTTPS support): requires OpenSSL.
Indicate the location of your OpenSSL library using -DSSL_PREFIX=...

Actions #1

Updated by Wim Dumon about 6 years ago

  • Status changed from New to Feedback

Hi,

Wt works with the 1.0 series of openssl, we haven't updated Wt yet to work with the newest openssl versions. It migh very well be that the library naming is the only thing that prevents it from just working.

We've seen openssl installations with a wild variety of library names. Wt allows you to set the library names through a cmake paramter, as you can read in WtFindSsl.txt. Have you tried to set SSL_LIB_NAMES=ssl and SSL_LIB_TOO_NAMES=crypto ?

We'll need to update our defaults to work with openssl 1.1 series.

Best regards,

Wim.

Actions #2

Updated by Smart Networks about 6 years ago

Unfortunately, it doesn't work for release only version.

In block:

@ IF (NOT SSL_LIB_NAMES)

SET (SSL_LIB_NAMES ssleay32MD ssleay32)

ENDIF (NOT SSL_LIB_NAMES)

IF (NOT SSL_LIB_TOO_NAMES)

SET (SSL_LIB_TOO_NAMES libeay32MD libeay32)

ENDIF (NOT SSL_LIB_TOO_NAMES)

MESSAGE (\"Looking for ssl: ${SSL_LIB_NAMES}, ${SSL_LIB_TOO_NAMES}\")

FOREACH (l ${SSL_LIB_NAMES})

LIST (APPEND SSL_LIB_DEBUG_NAMES \"${l}d\")

ENDFOREACH()

FOREACH (l ${SSL_LIB_TOO_NAMES})

LIST (APPEND SSL_LIB_TOO_DEBUG_NAMES \"${l}d\")

ENDFOREACH()@

You add 'd' suffix for debug version.

And then check for presence release AND debug versions

@ IF (SSL_INCLUDE_DIRS
AND SSL_LIB_RELEASE
AND SSL_LIB_DEBUG
AND SSL_TOO_LIB_RELEASE
AND SSL_TOO_LIB_DEBUG)@

Why don't you use standard FindOpenSSL?

https://cmake.org/cmake/help/v3.11/module/FindOpenSSL.html

Actions #3

Updated by Smart Networks about 6 years ago

The same problem with ZLIB:

IF(ZLIB_INCLUDE AND ZLIB_LIB_RELEASE AND ZLIB_LIB_DEBUG)

To solve - use standard https://cmake.org/cmake/help/v3.11/module/FindZLIB.html

Actions

Also available in: Atom PDF