目录
一、环境
win10 + vs2019 , curl 8.11.1 , openssl 3.1.8 , libssh2 1.11.1
二、缘起
主要也是趁着现在有时间,把能编译的编译一下,省的后面要用起来一时半会儿消耗太多时间,毕竟这个编译也是费了点时间折腾。
三、踩坑之旅
1.主要编译流程参考此文,连接如下:
windows 下编译libcurl - 大米粥的博客 - 博客园
但是此文章内的版本都使用的较低所以,笔者看git 上有比较高的版本就直接下载了高版本的,所以中间也是踩了些坑,特此记录,同时也是谨防自己后面又忘了。
2.CURL下载准备及编译。
*特别注意:如果要使用上文连接中的方式 curl 下载的时候请注意-下载下图中宽选的:

才能正确的出现文章中的对应这些文件夹。
其他版本也有projects 这个文件夹但是直接运行 generate.bat这个批处理文件会出现错误提示:要求被一个 git 仓库使用.....什么的然后就没然后了,直接退出了。如果遇到同样问题,记得切换过来即可。
正确下载,并运行之后,如下图:

执行完成之后进入 windows 文件夹,然后里面只有VC12的,直接用VS2019打开,对项目进行一下升级即可

然后生成即可,选择对应的版本,带不带oppenssl 等,生成即可
当然现在不能选 带openssl 及ssl2,不然各种缺文件,当前可以先只生成 curl 即可。

不过通过源代码这样生成出来的属于 DEV 开发版本。
3.openssl下载及编译
这个编译主要参考此文连接如下:
【Windows】编译libcurl,添加openssl和zlib支持_libcurl 64位静态库-优快云博客
这个笔者使用的版本按照上文连接中的操作,倒是没遇到什么坑,一路顺利过掉,只不过花费的等待时间稍微有点久,可能PC有点老旧的了....
4.curl+openssl联合生成
此处主要注意文件目录结构(目录结构readme、还有上文链接中有说明,不在赘述),只要不出错,就没什么的问题,按照上文连接中所说即可。
还有一个就是在构建对应目录的版本的时候也是用VC12 。

*注意好lib 与 dll 对应关系,上面openssl 如果按照连接中的默认参数生成的是 静态库 所以需要选择对应的lib版本生成
如果出现了1个生成 成功 1个生成失败的情况,报错:无法打开输入文件libcrypto.lib库的情况,手动从openssl生成的目录下拷贝到curl 的生成目录即可。

编译生成成功后可以直接使用curl -V查看下版本信息

5.ssl2编译及联合生成
ssl2编译 这个就比较简单直接cmake-gui 一路next就可以。
剩下的就是和上面联合openssl时候一样的操作。

同样如果出现一个生成成功一个生成失败的情况,手动复制对应的lib 到curl 生成目录下面即可。


生成完成同样可以 -V 下查看版本确认下。
百度试下,不过因为证书关系报错了,-K 忽略下证书,至少有返回了。
其他https 网站测试一下,可以正常读取页面内容。

至此,整个编译生成都完成了,也可以集成到自己的项目中去使用。
Windows VS2019下curl+openssl+libssh2编译
421

被折叠的 条评论
为什么被折叠?



