我正在尝试使用 Visual Studio 命令提示符 2010 在 Windows 8 上构建 libgit2 源代码。我还在计算机上成功编译并安装了 libssh2 源代码。
libssh2安装路径:C:\Program Files (x86)\libssh2
每当我为 libgit2 CMake.list 执行命令 cmake .. 时,我得到的输出为 LIBSSH2 not found。如果安装在默认搜索路径之外,请设置 CMAKE_PREFIX_PATH。
我已经尝试了一些建议,这些建议也可以在 stackoverflow 上找到,但没有运气。我还尝试将 libssh2 编译文件夹包括子目录(include、lib 和 share)放在 libgit2 的 cmake/Modules 文件夹中。
有人建议我在 CMakelist.txt 中配置外部依赖项以在 libgit2 中包含 libssh2 模块的正确方法是什么?
提前致谢!
最佳答案
CMake 脚本使用 pkg-config
来查找依赖项(对于基本安装附带的库,有一些特定于操作系统的异常(exception)情况),因此,如果您的 libssh2 位于 pkg-config
看起来,您必须设置 PKG_CONFIG_PATH
。
请注意,如果您在 mingw 环境中构建了 libssh2,它可能无法与 MSVC 构建的 libgit2 一起使用。
在 master
和 0.22
版本上,您还可以通过将 EMBED_SSH_PATH
设置为 libssh2 的最新版本来将 libssh2 嵌入到 libgit2 dll 中。可以使用 Windows 的加密库代替 OpenSSL。但如果您可以构建 libssh2 dll,那就是首选。
关于cmake - 使用 libssh2 的 libgit2 cmake 问题 :LIBSSH2 not found. 如果安装在默认搜索路径之外,请设置 CMAKE_PREFIX_PATH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33605019/