curl 编译成vs2019 使用的动态链接库 以及具体的使用方法(测试已经通过,手把手教你。)

前面

\quad 上次偷了个懒,在这篇文章里有记录过我当时使用的Visual Studio自带的包管理工具,很简单的就在项目里面加入了curl。简单快捷,但是有个问题,就是这样的话,程序体积有些大,速度也有些慢,不太好。

开始

我现在想把它弄成动态链接库,这样程序启动的时候会更快。所以,我就重新编译和导入到vs2019里面。

下载

https://curl.haxx.se/download.html这是官网。
首先去官网下载。不过有时候会打不开,不知道这个网站有啥问题,一般把多刷新几次就好,我个人觉得还是官方的东西靠谱,还可以根据自己的需要,选择想要的那个版本,不过一般都是直接最新版吧。哈哈哈。

解压

常规操作,解压到自己想要的一个文件夹里面去。推荐使用7z等软件,
解压完之后是这样的:
里面的每个文件夹有什么东西啊,大概是干啥的,可以进去看一看,瞄一瞄。不过一开始也不会很清楚的,瞄一下,大概有个印象即可。
在这里插入图片描述

编译-打开

接下来是最麻烦的地方了,我找的很多博客又是开控制台,又是命令行之类的各种操作,真的是麻烦,最后找到了一个简单的博客,操作方法及其简单。
就是这个链接。
具体操作方法就是直接使用Visual Studio打开
在这里插入图片描述

按照这个文件目录,打开里面的curl-all.sln文件即可。至于你是选择VC15还是里面的14 13 啥的,看你的Visual Studio版本了。vs2015的打开VC14,17的打开VC15,等等,具体参考的是里面的平台工具集,二者要对应即可。就是这个:(这个界面,点击 项目 属性即可弹出。我是vs里面的这些常用的按钮啥的,要记得在哪里,因为老是会需要用到。)
在这里插入图片描述

这个地方你可能会遇到两个问题,一是说打开的项目找不到啥啥文件的,我也遇到过这个问题,建议直接重新下载,别下那个-master版本的。这个版本的有这个问题,具体为啥还不清楚。二是你有可能会遇到平台工具集的问题,觉得想给自己电脑加几个除了当前vs版本的工具集,其实很简单,去微软官网下载一下你想添加的工具集版本对应的vs版本的installer,然后点击安装,这时只安装工具集那部分的的东西即可,这部分东西占用空间不大。弄完之后,再次打开你的vs就可以看到新安装的工具集了。 这个我在上次学习libcurl这篇文章里面的第4点也有提到。看第4点

编译-正式编译了

简单到爆炸的操作。
在上面选择你需要的版本,是dll 还是lib,是debug还是release等等。
关于lib和dll的区别与联系
debug和release就不说了。
在这里插入图片描述

然后点击本地Windows调试器就好了。结束了,如上图所示。就ok了。没有那些命令行啥的。有时候我觉得竟然Visual Studio已经如此强大了。

使用

很讨厌那些只介绍到,编译的博客,都不告诉大家怎么使用。虽然有些人是懂的,但是像我这样的就不懂。哈哈哈哈。

1

编译完了,之后,我们可以看到文件夹里面的一些子文件夹里面的内容发生了更改。请看,原来是没有bulid这个文件夹的。我觉得可能还有其他的更改,有兴趣的可以去找找。
在这里插入图片描述

正式使用dll

关于使用dll是另外一个大的课题。分为两种方法。具体的区别于联系这篇文章有介绍。
第一种方法是静态调用方式,我们这里介绍的。
第二种方法是动态调用方式,我以前的这篇文章有介绍。
我查到的很多的博客,也是常用的,就是静态调用方式。
这种方式的时候,我么需要做以下几件事:
1.在项目文件夹里面,创建文件夹include和lib.
2.进入目录D:\curl\curl-7.70.0\curl-7.70.0\build\Win32\VC14\DLL Release(具体看你自己的目录啦!)将libcurl.dll和libcurl.lib分别拷贝到项目文件夹的include和lib目录下。
在这里插入图片描述

3.项目——属性—— C/C++——预处理器——预处理器定义 添加 CURL_STATICLIB,关于这一项,我测试了不加也行,就是运行的时候,占用的内存大一些。因此是非必须的
4.项目——属性—— C/C++—— 常规—— 附加包含目录 添加include.(记得改完之后点击应用),不然没有生效,这几步都是,一定要记住!不然不生效的,就没用!
5.项目——属性—— 连接器—— 常规—— 附加库目录 添加lib.
6.将D:\curl\curl-7.70.0\curl-7.70.0\include下的curl目录拷贝到项目文件夹的include目录下。
(1 2 4 5 6 这几个操作往往是必须的,也是常规使用一个DLL必须要进行的操作。)
在这里插入图片描述

7.最后一步,先生成项目,这时在项目文件夹里面hi出现debug文件夹,然后把前面的那个libcurl.dll放到里面,至此就可以使用了!
8.最后的最后,当然使用的时候需要添加头文件和lib等等东西,至于这些东西具体是哪几个头文件,哪几个lib等等,对于通用的DLL添加方法不是很清楚,但是对于curl就是下面这几个。我的意思是说,对于这里使用cur;就是加入这几个东西就可以了,但是对于更加通用的方法暂时还不清楚。比如下一次有遇到了使用DLL又需要添加什么之类的。

#include <curl/curl.h>
#pragma comment(lib, "libcurl.lib")   
#pragma comment(lib, "wldap32.lib")   
#pragma comment(lib, "ws2_32.lib")   
#pragma comment(lib, "winmm.lib") 

如果还有问题,欢迎咨询,qq 1557414994.

参考博客:
https://blog.csdn.net/taoerit/article/details/40411191?locationNum=11&fps=1

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

指针的值是地址

觉得还不错,我会继续努力的。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值