libcurl编译及使用
环境:
libcurl版本:7.54.1
VS:Visual Studio 2013
一、编译
1、下载最新版的libcurl(curl-7.54.1.zip)(地址:https://curl.haxx.se/download.html),并解压。可以通过Download Winzard来选择你需要的包。
2、打开VS2013 开发人员命令提示,并CD进入 \curl-7.54.1\winbuild 目录。
VS生成代码的时候有一个运行库选项(项目属性 - 配置属性 - C/C++ - 代码生成 - 运行库)/MT和/MD(/MTd和/MDd是对应的debug版本)。编译时如果加了RTLIBCFG=static这个选项,就相当于编译了/MT版本的libcurl,否则是/MD版本的(默认);如果加了DEBUG=yes,就是编译了Debug版本的,否则就是Release版本的(默认)。
编译命令(编译静态库mode=static):
nmake /f Makefile.vc mode=static VC=12 // 相当于/MD
nmake /f Makefile.vc mode=static VC=12 DEBUG=yes // 相当于/MDd
nmake /f Makefile.vc mode=static VC=12 RTLIBCFG=static // 相当于/MT
nmake /f Makefile.vc mode=static VC=12 RTLIBCFG=static DEBUG=yes // 相当于/MTd
3、编译完毕,会在build目录生成文件。
4、更多信息参看\winbuild目录中的BUILD.WINDOWS.txt。
二、使用
1、拷贝include中curl文件夹和lib文件夹中的libcurl_a.lib静态库至工程目录。
2、加入预处理定义(如果是静态连接libcurl库)和头文件
#define CURL_STATICLIB
#include "curl\curl.h"
3、链接库
#if _DEBUG
#pragma comment(lib,"libcurl_a_debug.lib")
#else
#pragma comment(lib,"libcurl_a.lib")
#endif
4、构造函数或者初始化函数中加入
curl_global_init(CURL_GLOBAL_ALL);
5、析构函数或者退出函数中加入
curl_global_cleanup();
libcurl编译及使用的更多相关文章
- libcurl编译使用,实现ftp功能
Libcurl实现ftp的下载,上传功能.版本为curl-7.63.0 1.编译vs2015 参考资料:https://blog.csdn.net/yaojingkao/article/details ...
- libcurl编译
下载: git://github.com/bagder/curl.git openssl: openssl编译 for linux or mingw:./buildconf./configure ...
- 在window平台下,自己DIY编译OpenSSL,Libcurl ,来支持HTTPS传输协议
1 缘起 原来就了解些libcurl,一直没有机会在项目实际使用libcurl. 恰好最近一个云存储的项目,服务器使用openstack 恰好我负责现在的一个云存储SDK c++版本的开发中. 与 ...
- windows下libcurl+openssl编译与使用配置
之前使用过libcurl, 编译也是最简单的版本, 不需要openssl, 即不需要支持https, 所以编译和使用都很正常. 但要使用openssl就很麻烦了, 我花了差不多两天去编译和调用, 记录 ...
- Windows 编译libcurl(openssl+zlib)(使用VC编译)
libcurl主要功能就是用不同的协议连接和沟通不同的服务器,如果使用HTTPS,需要OpenSSL libcurl https://curl.haxx.se/download.html 下载Sour ...
- libcurl库openssl编译
openssl编译 win32: perl Configure no-shared VC-WIN32 --prefix=E:/lib/openssl-1.1.1 linux: ./config -f ...
- Yocto开发笔记之《嵌入式linux libcurl编程》(QQ交流群:519230208)
开了一个交流群,欢迎爱好者和开发者一起交流,转载请注明出处. QQ群:519230208,为避免广告骚扰,申请时请注明 “开发者” 字样 =============================== ...
- qt5集成libcurl实现tftp和ftp的方法一:搭建环境(五篇文章)
最近使用QT5做一个软件,要求实现tftp和ftp文件传输,使用QT5开发好UI界面等功能,突然发现QT5不直接提供tftp和ftp支持,无奈之下只好找第三方库来间接实现,根据网友的介绍,libcur ...
- Sword libcurl使用
libcurl编译 >> ./configure --prefix=/opt/soft/curl --disable-ldap --disable-ldaps >> make ...
随机推荐
- vue从安装到初始化项目
- SpringMVC笔记——SSM框架搭建简单实例
落叶枫桥 博客园 首页 新随笔 联系 订阅 管理 SpringMVC笔记——SSM框架搭建简单实例 简介 Spring+SpringMVC+MyBatis框架(SSM)是比较热门的中小型企业级项目开发 ...
- Android学习之Styles And Includes
最近在看 Android Programming: The Big Nerd Ranch Guide,书写的不错,推荐级别.打算把看书学到的东西,一点一点记录下来.目前看到24章,讲的是style 和 ...
- nginx+php+swoole安装记录
领了台阿里服务器1vCPU 1G,做下测试研究. 系统 centos7,使用yum安装. Nginx yum install nginx ##开启nginx service nginx start 安 ...
- January 09 2017 Week 2nd Monday
Patience is bitter, but its fruit is sweet. 忍耐是痛苦的,但它的果实是甜蜜的. Some patience may be just fruitless, o ...
- 在python命令行执行sudo命令
def test(): sudoPassword = 'test' command = '/opt/lampp/lampp stopmysql' str = os.system('echo %s|su ...
- php截取后台登陆密码的代码
php截取后台登陆密码的代码,很多时候黑客留了这样的代码,大家一定要注意下if($_POST[loginsubmit]!=){ //判断是否点了登陆按钮 $sb=user:.$_POST[userna ...
- java冒泡排序-选择排序-插入排序-使用API中文文档直接调用函数
import java.util.Arrays; public class ArrayDemo2_3 { public static void main(String []args) { //---- ...
- virtualbox+vagrant学习-4-Vagrantfile-9-Vagrant Settings
Vagrant Settings 配置命名空间:config.vagrant config.vagrant配置将修改vagrant本身的行为 Available Settings可用设置 config ...
- Apollo GPS调试笔记
前言:在Apollo美研团队的支持下,最近完成了Apollo推荐的Novatel PP7与我们的基站调试,在这里对Apollo的笔记做一个补充,希望以后的开发者不用在踩我们踩过的坑. 在自己调导航(h ...