博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows vs2005 libcurl使用整理
阅读量:6041 次
发布时间:2019-06-20

本文共 1385 字,大约阅读时间需要 4 分钟。

hot3.png

  1. 获取源码

下载 解压 tar -zxvf curl-7.56.0.tar.gz

  1. 使用vs2005打开工程,根据需求打开相应的工程

编译libcurl和curl D:\curl-7.56.0\projects\Windows\VC8\curl-all.sln

如果只编译libcurl,只需要打开 D:\curl-7.56.0\projects\Windows\VC8\lib\libcurl.sln

  1. 编译libcurl

编译libcurl工程时输出提示 1>d:\curl-7.56.0\lib\ssh.h(28) : fatal error C1083: 无法打开包括文件:“libssh2.h”: No such file or directory 看一下预处理器定义 _DEBUG BUILDING_LIBCURL DEBUGBUILD USE_OPENSSL USE_LIBSSH2 HAVE_LIBSSH2_H

如果不需要不使用libssh,可以将ssl相关的预处理宏,即删除以下预处理宏: USE_OPENSSL USE_LIBSSH2 HAVE_LIBSSH2_H

默认是编译动态库,如果需要编译静态库,需要做以下处理: 解决方案配置修改成 LIB Debug, 配置类型修改为静态库(.lib), 编译libcurl,生成libcurld.lib

  1. 测试

新建代码测试工程, 添加D:\curl-7.56.0\include\curl文件夹内所有头文件, 添加libcurld.lib, 使用静态库需要修改预处理器定义 CURL_STATICLIB 附加依赖项添加 ws2_32.lib wldap32.lib libcurld.lib

#include 
#include "curl/curl.h"int main(void){ CURL *curl; CURLcode res; curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "http://www.example.com/"); res = curl_easy_perform(curl); if(CURLE_OK == res) { char *ct; /* ask for the content-type */ res = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ct); if((CURLE_OK == res) && ct) printf("We received Content-Type: %s\n", ct); } /* always cleanup */ curl_easy_cleanup(curl); } return 0;}

代码出处见 getinfo Use getinfo to get content-type after completed transfer.

方法二:

使用cmake

转载于:https://my.oschina.net/randy1986/blog/1552954

你可能感兴趣的文章
VC++ 监视文件(夹)
查看>>
【转】keyCode对照表及JS监听组合按键
查看>>
[Java开发之路](14)反射机制
查看>>
mac gentoo-prefix安装git svn
查看>>
浅尝异步IO
查看>>
C - Train Problem II——(HDU 1023 Catalan 数)
查看>>
Speak loudly
查看>>
iOS-在项目中引入RSA算法
查看>>
[译] 听说你想学 React.js ?
查看>>
gulp压缩合并js与css
查看>>
块级、内联、内联块级
查看>>
Predicate
查看>>
[面试题记录01]实现一个function sum达到一下目的
查看>>
这个季节的忧伤,点到为止
查看>>
mysql通过配置文件进行优化
查看>>
省级网站群建设关注点
查看>>
工作第四天之采集资源
查看>>
innobackupex 在增量的基础上增量备份
查看>>
Windows Server 2012 R2 DirectAccess功能测试(2)App1服务器安装及配置
查看>>
基于清单的启动器的实现
查看>>