CMake 3.22.2 build fails on linking ctest - undefined reference to symbol 'EVP_EncryptUpdate@@OPENSSL_1_1_0
Building CMake 3.22.2 from source, using:
- cmake 3.21.3
- GCC 9.2.0
- Red Hat Enterprise Linux 8.1
- openssl-1.1.1c-2.el8_1.1.x86_64
Configuration -- the following are "ON":
- CMAKE_USE_OPENSSL
- CMAKE_USE_SYSTEM_BZIP2
- CMAKE_USE_SYSTEM_CURL
- CMAKE_USE_SYSTEM_EXPAT
- CMAKE_USE_SYSTEM_FORM
- CMAKE_USE_SYSTEM_JSONCPP
- CMAKE_USE_SYSTEM_LIBLZMA
- CMAKE_USE_SYSTEM_LIBRHASH
The "make" fails with
[ 78%] Linking CXX executable ../bin/ctest
cd /ifs/opt/src/cmake-3.22.2/BUILD/Source && /ifs/opt/cmake/3.21.3/bin/cmake -E cmake_link_script CMakeFiles/ctest.dir/link.txt --verbose=1
/cm/local/apps/gcc/9.2.0/bin/g++ CMakeFiles/ctest.dir/ctest.cxx.o -o ../bin/ctest libCTestLib.a libCMakeLib.a kwsys/libcmsys.a ../Utilities/std/libcmstd.a /usr/lib64/libexpat.so ../Utilities/cmlibarchive/libarchive/libcmlibarchive.a /usr/lib64/libz.so /usr/lib64/liblzma.so ../Utilities/cmzstd/libcmzstd.a /usr/lib64/libbz2.so /usr/lib64/libjsoncpp.so ../Utilities/cmlibuv/libcmlibuv.a -ldl -lrt /usr/lib64/librhash.so -lpthread /usr/lib64/libcurl.so
/usr/bin/ld: ../Utilities/cmlibarchive/libarchive/libcmlibarchive.a(archive_cryptor.c.o): undefined reference to symbol 'EVP_EncryptUpdate@@OPENSSL_1_1_0'
//usr/lib64/libcrypto.so.1.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [Source/CMakeFiles/ctest.dir/build.make:114: bin/ctest] Error 1
If I turn off CMAKE_USE_OPENSSL
, the build succeeds.