小疯子为梦想时刻准备着 2024-02-29 14:27 采纳率: 0%
浏览 42

关于#ssl#的问题:libssh相关编译问题参考:在Windows编译libsshwin10使用cmake编译libevent(解决依赖openssl)

windows Could not find OpenSSL, GCrypt or mbedTLS
描述: windows 采用cmake 编译libssh时,提示上面的情况

解决:最开始 Win64OpenSSL-3_2_1.exe,后来改成了Win64OpenSSL-1_1_1w.exe问题得到解决

libssh相关编译问题参考:
在Windows编译libssh
win10使用cmake编译libevent(解决依赖openssl)

  • 写回答

4条回答 默认 最新

  • 檀越@新空间 2024-02-29 14:28
    关注

    小疯子为梦想时刻准备着 下午好🌅🌅🌅
    本答案参考通义千问

    Windows上使用CMake编译libssh时遇到Could not find OpenSSL, GCrypt or mbedTLS的错误,这个问题通常是由于缺少OpenSSL库或者找不到合适的版本导致的。以下是解决这个问题的步骤:

    1. 检查已安装的OpenSSL:

      • 确保你已经安装了OpenSSL,可以通过命令行工具(如cmdPowerShell)运行openssl version来查看。
    2. 配置CMake寻找OpenSSL:

      • 在CMakeLists.txt文件中添加以下行来指定OpenSSL的路径:
      find_package(OpenSSL REQUIRED)
      include_directories(${OPENSSL_INCLUDE_DIR})
      target_link_libraries(your_target ${OPENSSL_LIBRARIES})
      

      其中your_target是你的项目目标名。

    3. 选择正确的OpenSSL版本:

      • 根据你的实际情况,可能需要下载特定版本的OpenSSL,例如你提到的Win64OpenSSL-1_1_1w.exe。确保下载的版本与你的系统和CMake版本兼容。
    4. 安装OpenSSL:

      • 如果没有安装,可以访问OpenSSL官网下载对应版本的二进制包,然后按照说明进行安装。
      • 安装完成后,将OpenSSL的include和lib目录添加到环境变量PATH中,以便CMake能够找到它。
    5. 重新配置和构建:

      • 清理旧的build目录,然后通过CMake重新配置项目:
      rm -rf build
      mkdir build
      cd build
      cmake ..
      

      接着执行构建:

      cmake --build .
      

    按照这些步骤操作,你应该能够解决Could not find OpenSSL的问题。如果问题仍然存在,可能需要检查CMake配置是否正确,或者确认OpenSSL是否已经成功安装并被CMake识别。

    评论

报告相同问题?

问题事件

  • 创建了问题 2月29日