vs2015编译libcurl+ssl+zlib(MT静态版)
来源:互联网 发布:linux应用层 编辑:程序博客网 时间:2024/05/21 21:50
编译不需要vc运行时的MT静态库版本的libcurl+ssl+zlib
三个库的目录放在同级目录下,以便对应本文的路径。
一定要使用VS2015 的 MSBuild 命令提示符,否则编译openssl可能会因为环境识别导致各种失败
zlib
优先把找到Makefile.msc的
CFLAGS = -nologo -MD -W3 -O2 -Oy- -Zi -Fd"zlib" $(LOC)
这一行,改为MD改为MT
使用VS2015 的 MSBuild 命令提示符工具,cd到zlib-1.2.8目录,使用命令编译
nmake -f win32/Makefile.msc OBJA="inffast.obj"
openssl
安装ActivePerl,自行搜索下载,一路Next安装完成
打开ms\nt.mak文件
修改为 CFLAG= /MT
使用VS2015 的 MSBuild 命令提示符,CD到openssl根目录,依次执行:
perl Configure VC-WIN32ms\do_ms.bat "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/vcvars32.bat"nmake -f ms/nt.mak
其他选项参考:
编译动态库:nmake -f ms\ntdll.mak编译静态库:nmake -f ms\nt.mak测试动态库:nmake -f ms\ntdll.mak test测试静态库:nmake -f ms\nt.mak test安装动态库:nmake -f ms\ntdll.mak install安装静态库:nmake -f ms\nt.mak install清除上次动态库的编译,以便重新编译:nmake -f ms\ntdll.mak clean清除上次静态库的编译,以便重新编译:nmake -f ms\nt.mak clean
libcurl
进入libcurl根目录下的lib目录,新建一名为release_ssl_zlib.bat的批处理文件,其内容如下:
call "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/vcvars32.bat"set CFG=release-ssl-zlibset RTLIBCFG=staticset OPENSSL_PATH=../../openssl-1.0.1uset ZLIB_PATH=..\..\zlib-1.2.8nmake -f Makefile.vc14pause
路径根据自己设定的来写,如果是都在同级目录,那么就按照这样就行了。
执行批处理文件以后,在lib目录下的release-ssl-zlib目录中,会生成libcurl.lib静态库。
使用时需要Copy文件并引用
libcurl.lib
libeay32.lib
ssleay32.lib
zlib.lib
预处理器 CURL_STATICLIB
在vs2015引用会遇到问题
“链接器工具错误 LNK2026 XXX模块对于 SAFESEH 映像是不安全的”
解决方法:
1.打开该项目的“属性页”对话框。
2.单击“链接器”文件夹。
3.单击“命令行”属性页。
4.将 /SAFESEH:NO 键入“附加选项”框中,然后点击应用。
0 0
- vs2015编译libcurl+ssl+zlib(MT静态版)
- C++(学习笔记)——VS2015静态编译libcurl
- VS2015静态编译libcurl(C++ curl封装类)
- 编译libcurl+zlib+openssl
- Win7 下使用 VS2015 交叉编译最新 libcurl 7.51.0(包含openssl-1.0.2j,zlib-1.2.8)
- Win10+VS2015编译libcurl
- VS2015 编译 libcurl
- libcurl+zlib+openssl编译安装
- libcurl 编译指南(支持SSL)
- libcurl 编译指南(支持SSL)
- zlib库VS2015编译步骤
- 编译libcurll(添加ssl,zlib)
- libcurl静态库编译
- Libcurl 静态编译
- libcurl编译增加ssl功能
- vs2015编译libcurl库7.52.1
- VS2013 + QT5.7.0静态编译(使用MT、MTd模式)
- xcode 编译静态库 libcurl
- 4-8-实参与形参、函数声明与定义、函数读取顺序、可变参数的函数、函数生存周期
- 链接<a>执行JS
- vim 或者vi 删除每行最后一个字符
- Xcode7 真机调试(无需证书)详解
- Spark-理解RDD
- vs2015编译libcurl+ssl+zlib(MT静态版)
- Unity游戏设计模式(三)原型模式(Prototype Pattern)
- [6] ffmpeg + SDL2 实现的视频播放器「视音频同步」
- 2016/09/17 将一个字符串翻转
- Android帧动画制作小demo
- Fragment的使用方法
- 第十四节下篇:日期相关类(个人总结)
- 架构漫谈
- duilib 多行垂直居中问题.