win10下使用vs2015编译支持xp系统的libcurl

win10下使用vs2015编译支持xp系统的libcurl在我的一篇博客中写了编译libcurl的,那种方式编译的curl动态库在win7到win10上可以使用,但是在xp系统里就不能使用了,接下来讲解一种方法可以在xp系统里使用cur。1编译openssl由于在perl官网里提供的perl版本没有dmake,因此使用我提供的perl5.24带dmake的包,下载地址。安装好perl后,可以尝试使用ppminstalldmake命令来进行安装dmake模块,在我电脑里无法安装,因此直接使用dmake离线包。将dmake.exe所在目录添加到系统pat

大家好,又见面了,我是你们的朋友全栈君。

在我的一篇博客中写了编译libcurl的,那种方式编译的curl动态库在win7到win10上可以使用,但是在xp系统里就不能使用了,接下来讲解一种方法可以在xp系统里使用cur。

1 编译openssl

由于在perl官网里提供的perl版本没有dmake,因此使用我提供的perl5.24带dmake的包,下载地址

在这里插入图片描述
安装好perl后,可以尝试使用ppm install dmake命令来进行安装dmake模块,在我电脑里无法安装,因此直接使用dmake离线包。将dmake.exe所在目录添加到系统path变量里:
在这里插入图片描述
接下来还需要安装nasm,nasm-2.13.01-installer-x64.exe下载地址
下载完成后进行安装,安装后也需要把nasm的安装目录添加到环境变量path里,如下图所示:
在这里插入图片描述
以上就是openssl编译所需要的环境。
编译供xp系统使用的不能用openssl的1.1版本,而应该用1.0版本,这里下载OpenSSL_1_0_2u
在这里插入图片描述
下载完成解压,使用vs2015的开发人员命令提示符进入到解压后的目录,在这里编译openssl的静态库,命令如下:

perl configure VC-WIN32 no-asm --prefix="D:\libcurl\windows_xp\openssl-OpenSSL_1_0_2u\build_x86"

在openssl1.1版本中,上面这一行加一个no-shared就可以编译成静态库,但openssl1.0是通过ms目录下的进行动态库和静态库编译的。
编译静态库命令如下:

ms\do_ms.bat 
nmake -f ms\nt.mak 
nmake -f ms\nt.mak test
nmake -f ms\nt.mak clean
nmake -f ms\nt.mak install

如果要编译动态库,使用如下命令:

ms\do_ms.bat 
nmake -f ms\ntdll.mak 
nmake -f ms\ntdll.mak test
nmake -f ms\ntdll.mak clean
nmake -f ms\ntdll.mak install

编译好的lib库如下:
在这里插入图片描述

2 编译curl

从github上下载curl最新版,curl7.74.0
使用vs2015打开curl工程
在这里插入图片描述
将解决方案配置改为如下所示:
在这里插入图片描述
右键libcurl工程,将平台工具集改为如下:
在这里插入图片描述
在vc++目录的包含目录和库目录设置为编译好的opensll库所在路径:
在这里插入图片描述
代码生成–运行库选择如下MT模式:
在这里插入图片描述
链接器-系统更改如下:
在这里插入图片描述
链接器–命令行添加上:
/SUBSYSTEM:CONSOLE,“5.01”
在这里插入图片描述
按照上图步骤,把curl这个工程也进行相同设置,就可以编译出可以在xp系统里运行的libcurl。
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158283.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JavaScript——利用正则表达式实现二代身份证号码的验证

    JavaScript——利用正则表达式实现二代身份证号码的验证HTML<divclass=”login-header”><aid=”link”>点击,弹出登录框</a></div><divclass=”box”id=”box”><divclass=”hd”id=”drop”>注册信息(可以拖拽)<spanid=”box_close”>[关闭]</span></div><divclas

    2022年6月27日
    31
  • UART和USART有区别

    UART和USART有区别UART  UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用于主机与辅助设备通信,如汽车音响与外接AP之间的通信,与PC机通信包括与监控调试器和其它器件,如EEPROM通信。  UART的功能计算机内部采用并行数据,不能直接把数据发到Modem,必须经过UART整理才能进行异步传输,其过程为:CPU先把准备写入串行设备的数据…

    2022年5月19日
    35
  • Analyzing the Performance of an Anycast CDN(含论文谷歌翻译,人工补正)

    Analyzing the Performance of an Anycast CDN(含论文谷歌翻译,人工补正)AnalyzingthePerformanceofanAnycastCDNABSTRACTContentdeliverynetworksmustbalanceanumberoftrade-offswhendecidinghowtodirectaclienttoaCDNserver.WhereasDNS-basedredir

    2022年5月20日
    34
  • JS通过window location href下载文件「建议收藏」

    JS通过window location href下载文件「建议收藏」最近在写文件下载,发现前端实现下载功能是依赖于浏览器特性,而非JS特性。前端实现文件下载主要分为以下情况1、在页面直接点击某个元素,然后另存为,弹出下载提示框2、直接输入网址,确定,弹出下载提示框3、点击页面的块触发下载时间,弹出下载提示框4、点击下载按钮,实现文件下载html代码 <div> <spanng-click=”downloadFile(url…

    2022年7月12日
    508
  • 十大经典武侠小说[通俗易懂]

    孤枕侧畔,一灯如豆,看尽万千红尘旧事刀枪入梦,剑气漫天,重温多少江湖恩仇    一说起武侠小说,每个像我这么大的男性或是比我小一些的男性都会眉飞色舞的侃上半天,仿佛每个人都是此中高手,但是武侠小说浩如烟海,能称得上作家的也多如牛毛,故高手或是低手之分并不在于看得多少,而在于精的程度。我之所以谈起这些来就不由得总是有些洋洋自得,便是因为我觉得自己看武侠小说既精又多,称得上此中高手,所

    2022年4月17日
    122
  • jsp中得到ContextPath的两种方法

    jsp中得到ContextPath的两种方法1.script 2.el ${pageContext.request.contextPath}

    2022年9月17日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号