共计 1161 个字符,预计需要花费 3 分钟才能阅读完成。
摘要 :花了一下午时间在 Windows 下编译好了 libssh2,我想说,Windows 开发真让人脑壳疼,光窗口开得就让人看得头晕
1、编译依赖库 openssl 和 zlib
这里我参考的博客:https://blog.csdn.net/liang19890820/article/details/51658574
一步一步安装下来,没有太大问题,唯一需要注意的就是环境变量设置的不一样,我添加的环境变量如下:
C:\Program Files\NASM;
C:\Program Files (x86)\Windows Kits\10\bin\10.0.17134.0\x86;
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\Hostx86\x86
还有一个 vcvars32.bat 存放的位置不太一样:
cd C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build
vcvars32.bat
2、编译 libssh2
2.1 使用 nmake 编译
这一步关键是修改 libssh2\win32\config.mk 文件,我主要修改了第 1 步中编译好的两个依赖库:
完成配置后,回到源码目录,我下载的是 libssh2-1.8.0
执行如下命令:
C:\libssh2-1.8.0
nmake /f NMakefile
这种方式编译出来的 dll,不利于开发,仅方便用于发布,我们可以使用 cmake 来进行编译
2.2 使用 cmake 编译
编译完后,所有需要的开发文件和发布需要的文件都会生成在 dll 目录中,如下操作步骤:
cd where/you/like/to/install
git clone https://github.com/libssh2/libssh2.git
cd libssh2
mkdir dll <--directory to install libssh2
mkdir build <-- directory to build
cd build
cmake -DCRYPTO_BACKEND=WinCNG -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=../dll --build ..
cmake --build . --target install
3、库的使用
这里我使用最新的 VS2017 来进行加载编译,具体代码我都上传到 github 了,地址如下:
https://github.com/linuxbirds/libssh2
4、总结
遇到困难不要怕,不畏缩,坚持攻克下来,否则以后都会留下心理阴影,再拿起来就难了!
