【问题标题】:Compile libssh with msvc for x64使用 msvc 为 x64 编译 libssh
【发布时间】:2018-10-26 05:54:48
【问题描述】:

首先,我不是使用 cmake 和所有这些东西从源代码构建库的专家。但不幸的是,我必须这样做。我遵循了 libssh 的安装文档中提到的步骤,并阅读了一些存档邮件,但没有任何帮助。在网络上听起来很容易,但我没有把它带到工作中。以下是我目前所做的:

  • libssh git下载(版本0.7.5)源代码
  • 如 INSTALL 文件中所述,下载并安装 cmake(版本 3.9.1)
  • 如 INSTALL 文件中所述,下载并安装 OpenSSL(版本 1.0.2)
  • 忽略 zlib,因为它是可选的

一切都安装在默认路径中。现在启动 cmake-gui.exe 并将源代码设置为 …/src 文件夹和二进制文件到 …/build 文件夹,按“配置”按钮,使用 Visual Studio 12 2013 Win64。 现在生成了第一个错误:install Library TARGETS given no DESTINATION。好的,检查使用变量LIB_INSTALL_DIR 设置路径的make 文件,在我的情况下路径为空。将项目添加到名为 LIB_INSTALL_DIR 的 cmake-gui 并带有 ../build 目录的路径。

好的,配置工作,生成工作,打开项目工作。尝试构建“ALL_BUILD”以error: C1083: Cannot open include file: 'config.h': No such file or directory 结束。在我的整个磁盘中搜索文件,没有找到。我相信cmake必须生成这个文件,猜对了吗?还是这个文件丢失了?希望有人可以帮助我!或者也许有一个已经编译的库的链接?不明白为什么libssh不提供下载,x64现在很正常。

【问题讨论】:

    标签: c++ visual-studio-2012 64-bit libssh


    【解决方案1】:

    最初的灵感往往是正确的,缺少的 config.h 通常是由 cmake 生成的。

    如果您使用 cmake-gui.exe,它需要一个源路径,标题是“源代码在哪里:”。我以为这意味着源代码文件的路径,位于…/src 下,但这是错误的。我需要设置根文件夹的路径,在我的情况下为,一切都像一个魅力。

    还需要改回 OpenSSL 版本 1.0.2,因为大约有 30 个函数声明发生了变化。

    【讨论】:

      猜你喜欢
      • 2022-09-25
      • 1970-01-01
      • 1970-01-01
      • 2011-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多