说在前面:
1、本教程使用的curl版本是curl-8.2.1,在github官方下载的,根据自己需求也可以去下载别的版本。下面给出了curl库官方下载网址,如果网络原因无法访问github,也可以从我给出的网盘链接直接下载,ps:网盘链接里面已经提供了编译过的库。
2、以下编译过程都是基于release版本,如果要使用debug版本,相应操作用蓝色括号kuo'qi'lai
github下载地址,直接按照下面图片下载压缩文件即可。
网盘下载链接,如果使用我提供的网盘链接,直接跳转到step6,step1-step5都不需要操作
step1:解压项目包中的“curl-8.2.1.zip”压缩包至任意路径,我这里是重新创建一个文件夹存放
step2:进入解压后的文件夹curl-8.2.1,双击运行.bat文件,运行后只会快速闪过一个应用窗口,这个窗口一闪而过,以至于根本不确定有没有运行,不重要,不确定就多点几次.bat。
step3:进入winbuild目录,记住这个目录路径,或者直接复制该路径就好了。这个路径接下来会用到。
step4:点击电脑左下角的“开始”,找到如下图所示应用窗口并打开。
step5:先进入之前下载并解压的文件的winbuild目录,命令为:这里的路径要填你刚刚复杂的那个。
cd /d D:\Curl\curl-8.2.1\winbuild
再执行:
nmake /f Makefile.vc mode=static VC=15 MACHINE=x64 DEBUG=no
(DEBUG=no意味着生成release的库,如果还想再生成一个debug版本的库,再执行一下下面的语句)
nmake /f Makefile.vc mode=static VC=15 MACHINE=x64 DEBUG=yes
step6:然后就会出现一大串编译的过程文字,我也看不懂,稍微等等,等到重新出现光标就完成了。
等待编译完成后,将在build目录下生成以下文件,我们主要用到框出来的两个文件,我这边同时生成了debug和release版本的,所以有6个文件,如果生成一个版本,只会有三个文件。(ps:从step1直接跳过来的朋友,只有框出来的两个文件)。
点进去可以看到bin、include、lib三个文件夹;
step7.到这里编译就完成了,接下来要在vs中添加该库了
在使用Visual Studio 2019/2022开发时,在你的项目页面,打开“项目”→“属性”,我这里是“FTP属性”,因为我这的项目名就叫“FTP”,别的项目名字就相应改变了,反正都是“属性”。
step8:如下图,首先把配置平台改为x64,然后在VC++目录界面内,将刚才编译好的文件中的include路径添加到“包含目录”,将lib目录添加到“库目录”;
添加的内容与第6点提到的文件有关,像我添加的内容如下(下面的地址根据直接实际情况来):
包含目录:D:\Curl\curl-8.2.1\builds\libcurl-vc15-x64-debug-static-ipv6-sspi-schannel\include;
库目录:D:\Curl\curl-8.2.1\builds\libcurl-vc15-x64-debug-static-ipv6-sspi-schannel\lib;
注意:记得加分号“;” debug模式下就添加debug文件名里面有debug的,release开发就添加文件名里面有release的。
step9: 找到C/C++→预处理器,在预处理器定义里添加:
CURL_STATICLIB;_CRT_SECURE_NO_WARNINGS;
注意是添加,不要把原有的内容删掉,记得分号。
step10:点击预处理器→代码生成,确保运行库为“多线程/MDd”,(debug版是“多线程调试/MDd”)
step11:
最后一步,点击链接器→输入,在附加依赖项里添加以下lib包
如果是release版本添加:
libcurl_a.lib;Ws2_32.lib;Wldap32.lib;winmm.lib;Crypt32.lib;Normaliz.lib;
如果是debug版本添加:libcurl_a_debug.lib;Ws2_32.lib;Wldap32.lib;winmm.lib;Crypt32.lib;Normaliz.lib;
最后最后最后!记得点击“应用”,然后“确定”。
还有记得这里要换成64位的。