一、编译 Visual Studio(VS2017)编译并使用curl C/C++ HTTP GET POST libcurl
二、调用示例 Visual Studio(VS2017)编译并使用curl C/C++ HTTP GET POST libcurl
承接各类STM32项目、JAVA、C++、Android、微信、Linux,毕业设计开发
手机:18559979152(微信同号)
VC网络开发中经常遇到网络请求,文件上传下载等需求,虽然通过socket可以自己写代码实现,但周期、稳定性、不同协议都是很大的问题,用来学习练手不错,实际项目应用中还是用第三方开源库更方便快捷。
libcurl主要功能就是用不同的协议连接和沟通不同的服务器。也就是相当封装了的sockPHP 支持libcurl(允许你用不同的协议连接和沟通不同的服务器)。 libcurl当前支持DICT,FTP,FTPS,Gopher,HTTP,HTTPS,IMAP,IMAPS,LDAP,LDAPS,MQTT,POP3,POP3S,RTMP,RTMPS,RTSP,SCP,SFTP,SMB,SMBS,SMTP,SMTPS,Telnet和TFTP。 curl支持SSL证书,HTTP POST,HTTP PUT,FTP上传,基于HTTP表单的上传,代理,HTTP / 2,HTTP / 3,Cookie,用户+密码验证,文件传输恢复,代理隧道等。
下面就以Visual Studio 2017 为例编译并使用libcurl做个记录,如有错误和不足,欢迎指正交流。
开发软件:Visual Studio 2017
开发环境:Windows 10 64位
一、下载libcurl源代码
libcurl的官方网站是 https://curl.haxx.se/
找到里面的Download菜单里面下载最新源码
二、解压并准备编译源码
解压curl-7.70.0.zip到方便的英文目录下,下面要通过CMD 命令行来操作,最好磁盘根目录,输的命令都少些^_^
这是目录结构
双击运行一下buildconf.bat批处理
编译x64
在开始菜单中找到Visual Studio 2017文件夹,编译64位则右击x64 Native Tools Command Prompt for VS 2017,编译32位则右击x86 Native Tools Command Prompt for VS 2017,右键选择->更多->管理员方式运行。
打开后使用DOS命令进入curl解压目录:
如果你的curl解压到的地方非C盘,比如D盘输入d:回车,会切换到D盘根目录,然后输入cd <你的curl解压目录/winbuild> 回车;
如果你的curl解压目录在C盘,直接输入cd <你的curl解压目录/winbuild> 回车
VS2017 x64 静态编译:
命令行输入:nmake /f Makefile.vc mode=static VC=15 MACHINE=x64 DEBUG=no。
如果想使用动态编译,将mode=static改为mode=dll。(本文仅教静态编译,同时curl官方也不建议使用动态编译)
如果使用x86,将MACHINE=x64改为MACHINE=x86。
如果需要debug版,将DEBUG=no改为DEBUG=yes。
如果你是VS2017且未更新到最新版,VC=15建议改为VC=14。
VC取值6,7,8,9,10,11,12,14,15
vc6 - VC6.0
vc7 - VS2002
vc7.1 - VS2003
vc8 - VS2005
vc9 - VS2008
vc10 - VS2010
vc11 - VS2012
vc12 - VS2013
vc13 - VS2014
vc14 - VS2015
vc15 - VS2017
更详细的编译指令及说明可以打开winbuild文件夹中的BUILD.WINDOWS.txt查看。
回车,开始编译。编译完成后builds目录会生成的.lib
来源:oschina
链接:https://my.oschina.net/u/4324616/blog/4326368