美文网首页
VS2015编译libcurl

VS2015编译libcurl

作者: ORCLee | 来源:发表于2017-10-27 11:02 被阅读0次

    前言

    编译libcurl是一件繁琐但并不复杂的事情,因为需要多个库的配合。编译前务必提前准备好zlib库openssl库libssh2库

    编译前准备

    编译zlib

    • 编译zlib(32位
      1.下载zlib源码,笔者下载的是zlib 1.2.11
      2.将压缩包解压到指定路径(如E:/zlib-1.2.11)。
      3.打开VS2015 x86 本机工具命令提示符
      4.切换到E:/zlib-1.2.11\contrib\masmx86目录,执行bld_ml32.bat文件,执行完后会产生4个文件,分别为:inffas32.lstmatch686.lstinffas32.objmatch686.obj
      5.将上一步产生的inffas32.objmatch686.obj文件复制到根目录下(E:/zlib-1.2.11),将VS2015命令提示符目录切换到根目录(E:/zlib-1.2.11),执行nmake命令。待编译成功完成,就会在根目录下(E:/zlib-1.2.11)生成zlib.libzlib1.dll文件。
      nmake -f win32/Makefile.msc LOC="-DASMV -DASMINF" OBJA="inffas32.obj match686.obj"  
      
    • 编译zlib(64位
      1.下载zlib源码,笔者下载的是zlib-1.2.11
      2.将压缩包解压到指定路径(如E:/zlib-1.2.11)。
      3.打开VS2015 x64 本机工具命令提示符
      4.切换到E:/zlib-1.2.11\contrib\masmx64目录,执行bld_ml64.bat文件,执行完后会产生4个文件,分别为:inffasx64.lstgvmat64.lstinffasx64.objgvmat64.obj
      5.将上一步产生的inffasx64.objgvmat64.obj文件复制到根目录下(E:/zlib-1.2.11),将VS2015命令提示符目录切换到根目录(E:/zlib-1.2.11),执行nmake命令。待编译成功完成,就会在根目录下(E:/zlib-1.2.11)生成zlib.libzlib1.dll文件。
      nmake -f win32/Makefile.msc LOC="-DASMV -DASMINF" OBJA="inffasx64.obj gvmat64.obj"  
      

    编译openssl

    1.准备工作

    2.设置VC编译环境

    • 编译32位openssl
      1)打开VS2015 x86 本机工具命令提示符,执行以下命令切换目录。
      cd C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
      
      2)执行.bat文件
      vcvars32.bat
      
    • 编译64位openssl
      1)打开VS2015 x64 本机工具命令提示符,执行以下命令切换目录。
      cd C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64
      
      2)执行.bat文件
      vcvars64.bat
      

    3.编译openssl

    • 编译32位openssl
      1)切换VS2015 x86 本机工具命令提示符目录到openssl解压目录。

      cd E:\openssl-1.0.2l
      

      2)配置输出目录和编译类型 (类型见备注

      perl Configure [类型] no-asm --prefix="[输出目录]"
      

      3)配置模式
      执行命令

      ms\do_nasm
      

      4)编译openssl动态链接库

      nmake -f ms\ntdll.mak
      nmake -f ms\ntdll.mak test
      nmake -f ms\ntdll.mak install
      

      备注:编译32位openssl可选的编译类型

      • debug-VC-WIN32  编译32位debug版本
      • VC-WIN32              编译32位release版本
    • 编译64位openssl
      1)切换VS2015 x64 本机工具命令提示符目录到openssl解压目录。

      cd E:\openssl-1.0.2l
      

      2)配置输出目录和编译类型 (类型见备注

      perl Configure [类型] no-asm --prefix="[输出目录]"
      

      3)配置模式
      执行命令

      ms\do_win64a.bat
      

      4)编译openssl动态链接库

      nmake -f ms\ntdll.mak
      nmake -f ms\ntdll.mak test
      nmake -f ms\ntdll.mak install
      

      备注:编译64位openssl可选的编译类型

      • debug-VC-WIN64A  编译64位debug版本
      • VC-WIN64A              编译64位release版本

    编译libssh2

    1.下载libssh2并解压到指定目录(如E:\libssh2-1.8.0),笔者下载的是libssh2-1.8.0
    2.打开E:\libssh2-1.8.0\win32目录下的libssh2.dsw进行编译,编译成功后生成libssh2.liblibssh2.dll。(编译libssh2需要openssl

    编译libcurl

    1.下载curl并解压(如E:\curl-7.56.0)。笔者下载的是curl-7.56.0
    2.打开E:\curl-7.56.0\projects\Windows\VC14目录下的curl-all.sln,添加openssllibssh2头文件目录包含目录,添加openssllibssh2库文件目录库目录,然后右击libcurl项目根据需求进行编译。成功编译后,在E:\curl-7.56.0\build目录下生成libcurl.liblibcurl.dll

    参考

    相关文章

      网友评论

          本文标题:VS2015编译libcurl

          本文链接:https://www.haomeiwen.com/subject/gjfrpxtx.html