1、下载libcurl源码,我用的vs2013,curl-7.67.0,下载链接https://curl.haxx.se/download/curl-7.67.0.zip
2、解压后进入到winbuild目录,复制该路径。然后管理员身份运行VS2013 x86 本机工具命令提示(我编译x86版本),进入到刚刚复制的路径。
3、输入命令:nmake /f Makefile.vc mode=dll DEBUG=yes
即编译Debug版本dll动态库
4、最后会在刚刚curl源码的目录中生成builds文件夹,其中的libcurl-vc-x86-debug-dll-ipv6-sspi-winssl就是我们需要的。可以将其复制到其他路径以便今后使用。
5、创建一个vs工程,为项目配置属性(配置属性----VC++目录)。
包含目录:添加libcurl-vc-x86-debug-dll-ipv6-sspi-winssl的include路径
库目录:添加libcurl-vc-x86-debug-dll-ipv6-sspi-winssl的lib路径
6、在”链接器----输入----附加依赖项”中添加libcurl_debug.lib(这是我libcurl-vc-x86-debug-dll-ipv6-sspi-winssl下lib中生成的lib名称)
7、测试代码
#include <curl/curl.h>
#pragma comment(lib,"libcurl_debug.lib")
int main(int argc, char* argv[]) {
CURL *curl = nullptr; //定义CURL类型的指针
CURLcode res; //定义CURLcode类型的变量,保存返回状态码
//初始化一个CURL类型的指针
curl = curl_easy_init();
if (curl != nullptr) {
//设置curl选项. 其中CURLOPT_URL是让用户指 定url. url中存放的是网址
curl_easy_setopt(curl, CURLOPT_URL, "http://www.baidu.com");
//调用curl_easy_perform 执行我们的设置.并进行相关的操作. 在这 里只在屏幕上显示出来.
res = curl_easy_perform(curl);
if (res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
}
//清除curl操作.
curl_easy_cleanup(curl);
}
return 0;
}
8、运行出错,将libcurl-vc-x86-debug-dll-ipv6-sspi-winssl下bin中的libcurl_debug.dll拷贝到当前工程可执行程序的目录