场景
         CMake配置RabbitMQ编译环境,可以取消ENABLE_SSL_SUPPORT。启用ENABLE_SSL_SUPPORT,需要引入openSSL库
否则配置出错
Call Stack (most recent call first):
  CMakeLists.txt:122 (find_package)

CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.2/Modules/FindPackageHandleStandardArgs.cmake:138 (message):
  Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the
  system variable OPENSSL_ROOT_DIR: Found unsuitable version ".0.0`", but
  required is at least "0.9.8" (found
  SSL_EAY_LIBRARY-NOTFOUND;LIB_EAY_LIBRARY-NOTFOUND)
Call Stack (most recent call first):
  C:/Program Files (x86)/CMake/share/cmake-3.2/Modules/FindPackageHandleStandardArgs.cmake:372 (_FPHSA_FAILURE_MESSAGE)
  C:/Program Files (x86)/CMake/share/cmake-3.2/Modules/FindOpenSSL.cmake:324 (find_package_handle_standard_args)
  CMakeLists.txt:122 (find_package)
FindOpenSSL.cmake文件中寻找OpenSSL版本的时候,需要引用到OpenSSL源码文件中的版本记录文件,因此需要添加版本号

解决方案
网址:http://slproweb.com/products/Win32OpenSSL.html

下载:Win32 OpenSSL v1.1.0h

该网站提供了一个编译完成的OpenSSL安装包,1.1.1版本还处于实验性阶段的版本,因此建议下载下载1.1.0版本的installer,light后缀代表的是安装器中没有包含头文件和lib链接文件,这一点需要注意


OpenSSL版本说明

            openssl-1.0.2版本是当前维护的稳定版本,1.1.1版本还处于开发过程中,在windows环境下编译1.1.1版本会出现问题 


发布策略
2014年12月23号第一次发布
2018年5月29号最近发布
 截至发布1.0.0,OpenSSL版本方案不断改进,满足开发者和供应商的需求。许可证发布版本,例如1.0.2a,专门修复问题,没有添加新属性。最小版本号最后一个数字修改,比如1.1.0VS1.1.1,可能包含新的特性。应该注意的是,一些特性对于应用程序是透明的,例如最大协商的TLS版本和密码套件,性能改进等等。 应用服务可以直接使用这些属性,无需重新编译。

关于当前和未来版本,OpenSSL项目采取了以下政策
版本1.1.0将得到支持,直到发布1.1.1版本后的一年
版本1.0.2将被支持,直到2019-12 31(LTS)
版本1.0.1不支持
版本1.0.0不支持
版本0.9.8不支持


    我们会指定一个发行版本作为一个长期支持的版本(LTS).LTS版本将至少得到五年的支持,并且每隔四年指定一次。不是指定的LTS版本至少会支持两年

在支持的最后一年,除了修复安全性之外,不会提交任何东西。在此之前,会修复bug和安全漏洞

    OpenSSL的下一个版本是1.1.1,这将是一个LTS版本。这个版本当前正在开发中,已经有了一个主要的TLSv1.3的实现.IETF还没有发布TLSv1.3的RFC文档。直到发布TLSv1.3 RFC文档,OpenSSL1.1.1才会真正发布

1.1.1的发布时间表如下:这可能在需要时随时修正


摘自:https://www.openssl.org/policies/releasestrat.html