为 x64 使用 msvc 编译 libssh

Compile libssh with msvc for x64

首先,我不是使用 cmake 和所有这些东西从源代码构建库的专家。但不幸的是我不得不这样做。我按照 libssh 的安装文档中提到的步骤进行操作,并阅读了一些存档邮件,但没有任何帮助。在网络上听起来很简单,但我没有把它付诸实践。这是我到目前为止所做的:

一切都安装在默认路径中。现在启动 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 dir.

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

最初的灵感往往是对的,缺的config.h一般是cmake生成的。

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

还需要改回 OpenSSL 1.0.2 版,因为大约有 30 个函数声明已更改。