libcurl + open-ssl 64位静态编译

libculr下载地址: http://curl.haxx.se/latest.cgi?curl=zip
openssl安装包: http://slproweb.com/products/Win32OpenSSL.html

一、编译open-ssl:
编译libcurl不难,但是编译open-ssl却是各种坎坷,网上的编译文章很多,但问题更多。但幸运的是,通过安装版的open-ssl,可以绕开繁琐且各种怪坑的编译open-ssl过程。
安装后,所有需要的头文件、lib、dll,都在安装目录下,

我安装在了默认的C:/OpenSSL-win64目录
在这里插入图片描述

一、编译libcurl(静态编译):
下载最新的curl-7.62.0.zip,并解压:

我的解压目录:E:/libcurl
在这里插入图片描述

进入:E:\libcurl\curl-7.62.0\projects\Windows\VC14\src,用vs2015打开工程。

然后开始如下工作:
1、项目->属性->C/C++ ->常规:加入open-ssl的头文件目录:C:\OpenSSL-Win64\include,为了方便管理,也可以先把头文件拷贝到合适的目录,再引用,我拷贝到了:E:\libcurl\include\,

在这里插入图片描述

在这里插入图片描述

2、将下面两个文件改名为libeay32.lib、ssleay32.lib,然后拷贝到:E:\libcurl\lib

在这里插入图片描述

3、项目->属性->链接器:库目录定位至E:\libcurl\lib,并加入libeay32.lib、ssleay32.lib;

在这里插入图片描述

在这里插入图片描述
4、运行库改为MT:

在这里插入图片描述

5、编译通过,生成libcurl.lib

三、测试

1、新建一个控制台工程libcurl-demo。
2、将libcurl头文件目录页拷贝至:E:\libcurl\include,并配置项目属性引用该目录
在这里插入图片描述
3、链接lib:ws2_32.lib、Wldap32.lib、crypt32.lib、legacy_stdio_definitions.lib、libcurl.lib,前4个都是系统自带的,加上去用就是了,否则编不过

4、加入测试代码:
在这里插入图片描述
5、编译,如果出现以下错误:
在这里插入图片描述

加入以下代码:
#include “stdafx.h”
// TODO: 在 STDAFX.H 中引用任何所需的附加头文件,
//而不是在此文件中引用
#if _MSC_VER>=1900
#include “stdio.h”
_ACRTIMP_ALT FILE* __cdecl __acrt_iob_func(unsigned);
#ifdef __cplusplus
extern “C”
#endif
FILE* __cdecl __iob_func(unsigned i) {
return __acrt_iob_func(i);
}
#endif /* _MSC_VER>=1900 */

再次编译,通过!!

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值