You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

配置Azerothcore时遇CMake错误:找不到OpenSSL缺失OPENSSL_CRYPTO_LIBRARY如何解决?

CMake配置Azerothcore时OpenSSL查找失败的解决办法

问题详情

构建Azerothcore时CMake抛出以下错误:

CMake Error at C:/Program Files/CMake/share/cmake-3.27/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the
  system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY Crypto
  SSL) (found version "3.2.0")
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.27/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  src/cmake/macros/FindOpenSSL.cmake:559 (find_package_handle_standard_args)
  deps/openssl/CMakeLists.txt:17 (find_package)

已手动添加以下系统环境变量,但问题仍存在:

OPENSSL_INCLUDE_DIR C:/Program Files/OpenSSL-Win64/include
OPENSSL_LIBRARIES C:/Program Files/OpenSSL-Win64/lib
OPENSSL_ROOT_DIR C:/Program Files/OpenSSL-Win64

解决方案

  • 检查OpenSSL版本兼容性:
    Azerothcore对OpenSSL 3.x版本的支持可能存在适配问题,报错中显示找到的是3.2.0,建议降级到OpenSSL 1.1.x系列(比如1.1.1w),这是多数旧版项目的稳定兼容版本。

  • 确保环境变量生效:
    添加系统变量后,必须重启CMake、终端或者你使用的IDE,否则新的环境变量不会被读取。

  • 修正OPENSSL_LIBRARIES路径:
    该变量需要指向具体的库文件,而不是仅到lib目录。64位系统下,设置为:

    C:/Program Files/OpenSSL-Win64/lib/libcrypto.lib;C:/Program Files/OpenSSL-Win64/lib/libssl.lib
    

    两个路径用分号分隔。

  • 清理CMake缓存:
    删除build目录下的CMakeCache.txt文件和CMakeFiles文件夹,重新运行CMake配置,避免旧缓存残留导致的路径识别问题。

  • 手动在CMake命令行指定参数:
    如果环境变量依然不生效,可以直接在运行CMake时传递参数(替换为你的Visual Studio版本和OpenSSL实际路径):

    cmake -G "Visual Studio 17 2022" -A x64 -DOPENSSL_ROOT_DIR="C:/Program Files/OpenSSL-Win64" -DOPENSSL_CRYPTO_LIBRARY="C:/Program Files/OpenSSL-Win64/lib/libcrypto.lib" -DOPENSSL_SSL_LIBRARY="C:/Program Files/OpenSSL-Win64/lib/libssl.lib" ..
    

内容的提问来源于stack exchange,提问作者Anton M

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 18:42:45