zoukankan      html  css  js  c++  java
  • 关于在Windows XP Server 2003下使用libcurl库的一些问题 附编译好的libcurl下载 和使用libcurl访问百度的例子工程

    libcurl编译部分摘抄自别人的文章,后面是我写的的记录

    步骤

    下载源码

    首先去github的对应页面下载curl代码,至于在Windows下你是用的git还是直接下我就不管啦,我直接下的zip.

    下载好了之后,解压zip文件。

    启动编译工具

    在开始菜单中查找: 'Developer Command Prompt for VS <version>'

    比如我安装的是VS2015,那么对应的工具就是:'Developer Command Prompt for VS2015',启动它,进入命令行窗口。

    进入我们解压好的目录,比如我这里:
    cd C:UsersoflyhighDownloadscurl-mastercurl-master

    执行 buildconf.bat

    Github的编译文档中没有提到这个,但是这个步骤和重要,否则编译时会出如下错误:

    Copying libs...
    NMAKE : fatal error U1073: don't know how to make '..src ool_hugehelp.c'
    Stop.
    NMAKE : fatal error U1077: '"C:Program Files (x86)MicrosoftVisual Studio 14.0VCBIN make.exe"' : return code '0x2'
    Stop.

    编译

    进入到winbuild目录
    cd winbuild

    执行编译指令:

    如果想兼容XP Server 2003 请修改编译配置并使用文末的nmake命令行编译

    nmake /f Makefile.vc mode=static DEBUG=no VC=14 MACHINE=x86

    有关编译指令的选项说明请参考:
    https://github.com/curl/curl/blob/master/winbuild/BUILD.WINDOWS.txt

    对于上述指令而言,编译静态库,关闭调试,目标机器X86,编译工具版本为VC14

    测试

    编译成功后,我们会在项目目录下生成
    buildslibcurl-vc14-x86-release-static-ipv6-sspi-winssl目录,其中包含如下内容:

    分别是可执行文件、头文件以及静态库。

    然后我们来测试一下我们编译出来的curl.exe是否好用,来试试读取创世块:

    curl.exe --data "{"id":1,"jsonrpc":"2.0","method":"call","params":["database_api","get_block",[1]]}" https://api.steemit.com


    一切正常!

    参考文件

    ————————————————————————————————

    正文开始:

     首先编译时注意XP兼容性问题 需要对CFLAGS行和CURL_CFLAGS行末尾加/D_USING_V110_SDK71_

    把/subsystem:console改为/subsystem:console,"5.01"

     

     然后编译命令行要加上ENABLE_IDN=no关闭IDN功能,不然在xp下会报少IDN的DLL

    https://github.com/curl/curl/blob/master/lib/idn_win32.c

    或者你可以直接修改源码

    可以参考 https://www.cnblogs.com/passedbylove/p/5979927.html

    nmake /f Makefile.vc mode=static DEBUG=no VC=14 MACHINE=x86 ENABLE_IDN=no

    附编译好的libcurl下载 32位的 https://down.97k.win/OneDrive/libcurl-vc14-x86-release-static-ipv6-sspi-winssl.7z

    例子工程 https://down.97k.win/OneDrive/curltest.7z

  • 相关阅读:
    js 面试的坑:变量提升
    meta 标签大全
    一个极为简单的requirejs实现
    AMD 的 CommonJS wrapping
    浅解析js中的对象
    javascript运动系列第二篇——变速运动
    开发汉澳即时通信网,2006年上线,QQ死期到了
    SpringMVC中的异步提交表单
    HDU 3698 DP+线段树
    黑马程序猿_反射、内省、泛型
  • 原文地址:https://www.cnblogs.com/tututu-patch/p/11291255.html
Copyright © 2011-2022 走看看