Windows下编译并使用libssh2库

摘要:花了一下午时间在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步中编译好的两个依赖库:

image.png

完成配置后,回到源码目录,我下载的是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、总结

遇到困难不要怕,不畏缩,坚持攻克下来,否则以后都会留下心理阴影,再拿起来就难了!

觉得文章不错,打个赏如何?

打赏

微信扫码

pay_weixin

长按识别二维码

果子
关于

冷蟊初退,孤灯野澜,志起鸡鸣,墓不悲秋!

文章分类 其它

发表评论