Cmake errors with OpenSSL "NORMALIZE_VERSION"

166 Views Asked by At

Windows 11

Visual Studio 2022 17

Boost 1.81

Cmake 3.27

I'm trapped in CMake with errors. It seems to pertain to OpenSSL. I have tried the latest build, I've tried old builds...but errors persist (also with newer builds I also get a TrinityCore error about not supporting above 1.x). My system variables are set correctly. Pasting log below, and screenshot below that:

CMake version: 3.27.4
Running cmake hook: AFTER_LOAD_CONF
No hooks registered for AFTER_LOAD_CONF
Enabled С++20 standard
Detected 64-bit platform
MSVC: Minimum version required is 19.24, found 19.37.32822.0 - ok!
MSVC: 64-bit platform, enforced -D_WIN64 parameter
MSVC: Enabled extended object-support for debug-compiles
MSVC: Overloaded standard names
MSVC: Disabled NON-SECURE warnings
MSVC: Disabled POSIX warnings
MSVC: Disabled INTMAX_MAX warnings
MSVC: Enable NOMINMAX
MSVC: Disabled generic compiletime warnings
Using installation path for configuration files
Running cmake hook: AFTER_LOAD_CMAKE_MODULES
No hooks registered for AFTER_LOAD_CMAKE_MODULES
Found MySQL library: C:/Program Files/MySQL/MySQL Server 8.0/lib/libmysql.lib
Found MySQL headers: C:/Program Files/MySQL/MySQL Server 8.0/include
Found MySQL executable: C:/Program Files/MySQL/MySQL Server 8.0/bin/mysql.exe
Found git binary : C:/Program Files/Git/cmd/git.exe

* AzerothCore revision            : b84596fcaba2 2023-09-17 03:05:10 +0200 (master branch)

* Install core to                 : C:/Program Files/AzerothCore
* Install configs to              : C:/Program Files/AzerothCore

* Build applications              : Yes (all)
* Build tools                     : Yes (all)
* Build with scripts              : Yes (static)
* Build with modules              : Yes (static)
* Build unit tests                : No  (default)
* Build core w/PCH                : Yes (default)
* Build scripts w/PCH             : Yes (default)
* Show compile-warnings           : No  (default)
* Use coreside debug              : No  (default)
* Use MySQL sourcetree            : No
* Use GIT revision hash           : Yes (default)
* Enable vmap DisableMgr checks   : Yes (default)
* Show source tree                : Yes - "hierarchical"

CMake Warning (dev) at deps/boost/CMakeLists.txt:35 (find_package):
  Policy CMP0144 is not set: find_package uses upper-case <PACKAGENAME>_ROOT
  variables.  Run "cmake --help-policy CMP0144" for policy details.  Use the
  cmake_policy command to set the policy and suppress this warning.

  CMake variable BOOST_ROOT is set to:

    C:/local/boost_1_81_0

  For compatibility, find_package is ignoring the variable, but code in a
  .cmake module might still use it.
This warning is for project developers.  Use -Wno-dev to suppress it.

Found OpenSSL library: optimized;C:/Program Files/OpenSSL-Win64/lib/VC/libssl64MD.lib;debug;C:/Program Files/OpenSSL-Win64/lib/VC/libssl64MDd.lib;optimized;C:/Program Files/OpenSSL-Win64/lib/VC/libcrypto64MD.lib;debug;C:/Program Files/OpenSSL-Win64/lib/VC/libcrypto64MDd.lib
Found OpenSSL headers: C:/Program Files/OpenSSL-Win64
CMake Error at src/cmake/macros/EnsureVersion.cmake:94 (NORMALIZE_VERSION):
  NORMALIZE_VERSION Macro invoked with incorrect arguments for macro named:
  NORMALIZE_VERSION
Call Stack (most recent call first):
  src/cmake/macros/FindOpenSSL.cmake:576 (ENSURE_VERSION)
  deps/openssl/CMakeLists.txt:17 (find_package)


CMake Error at src/cmake/macros/FindOpenSSL.cmake:578 (message):
  TrinityCore needs OpenSSL version 1.0 but found too new version .
  TrinityCore needs OpenSSL 1.0.x or 1.1.x to work properly.  If you still
  have problems please install OpenSSL 1.0.x if you still have problems
  search on forum for TCE00022
Call Stack (most recent call first):
  deps/openssl/CMakeLists.txt:17 (find_package)


Configuring incomplete, errors occurred!

enter image description here

1

There are 1 best solutions below

0
user23385461 On

Make sure to use AC recommended file versions and download latest source of AC with git pull, first try 32bit as a test experiment. This means using all files which are 32bit including mysql 5.7, you don't need to remove VC just make sure to set project to 32bit and then try compiling. If none of this works, there maybe something wrong with the source itself. Alternatively you may need to play musical chairs with openssl.

Overall of all the cores I have tried, AzerothCore is the only one I have never been able to compile. If it doesn't work try one of their vm solutions instead. Or try compiling without modules first.