openssl版本:1.0.2h

编译器:MSVC (VS2013)

需要准备工具:perl。

windows环境的perl下载请戳这里:http://www.activestate.com/activeperl

打开VS2013的x86 Native command prompt(编译的是32位版本),并切换到ssl的解压根路径:

perl Configure VC-WIN32 --prefix=C:\Build-OpenSSL-VC-32           #release版本用VC-WIN32 debug版本用debug-VC-WIN32

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

运行之上命令,结果出错:

ssembling: tmp32\sha1-586.asm

tmp32\sha1-586.asm(1432) : error A2070:invalid instruction operands

tmp32\sha1-586.asm(1576) : error A2070:invalid instruction operands

 

然后原因追查到这里:https://github.com/openssl/openssl/issues/169

看了之后才明白,原因是原来do_ms.bat  编译汇编是用的MASM编译器,MASM编译sha1-586.asm文件的时候出错了。issue上面有人说说不要用masm编译,换成NASM编译,

然后我再从NASM的官网下载了NASM,配上环境变量,运行以下命令:

perl Configure VC-WIN32 --prefix=C:\Build-OpenSSL-VC-32           #release版本用VC-WIN32 debug版本用debug-VC-WIN32

ms\do_nasm.bat
nmake -f ms\nt.mak
nmake -f ms\nt.mak install

然后就能编译成功了。

references: 

http://developer.covenanteyes.com/building-openssl-for-visual-studio/

https://github.com/openssl/openssl/issues/169

http://stackoverflow.com/questions/12850607/initializing-big-numbers-with-constants-in-masm

windows环境下VS2013编译openSSL的更多相关文章

  1. Windows环境下使用VS2005编译OpenSSL

    如何Windows环境下,使用VS2005编译OpenSSL,虽然这个问题在Baidu.Google上一堆,但安装中还是遇到些问题,在这里 记录下来希望能帮助大家不要在走弯路.注:我是在WinXP S ...

  2. Openstack 二次开发之:在windows 环境下编译Openstack-java-sdk

    在windows环境下使用maven对openstack-java-sdk进行编译 编译源文件 下载源代码 git clonehttps://github.com/woorea/openstack-j ...

  3. windows环境下protobuf的java操作{编译,序列化,反序列化}

    google protocol buffer的使用和原理 概况: Protocol Buffers(也就是protobuf)是谷歌的语言中立的.平台中立的.可扩展的用于序列化结构化的数据: windo ...

  4. 编译实战 | 手摸手教你在Windows环境下运行Redis6.x

    原创:微信公众号 码农参上,欢迎分享,转载请保留出处. 哈喽大家好啊,我是没事就愿意瞎捣鼓的Hydra. 不知道有没有小伙伴像我一样,平常开发中用的是windows操作系统,有时候想装点什么软件,一看 ...

  5. Windows环境下搭建MosQuitto服务器

    Windows环境下搭建MosQuitto服务器 2018年04月16日 22:00:01 wistronpj 阅读数:1185  摘自:https://blog.csdn.net/pjlxm/art ...

  6. go语言环境搭建+sublime text3(windows环境下)

    感觉有点坑,整了一下午~搞定 go语言环境搭建+sublime text3(windows环境下) 1.安装sublime text3 2.安装go语言程序包 3.测试go语言是否安装成功     键 ...

  7. 第一部分:使用iReport制作报表的详细过程(Windows环境下)

    提示:在有些板块,文中的图片看不到,建议到我的blog浏览文章:http://blog.csdn.net/jemlee2002/文章将会涉及3个方面的内容: 第一部分:使用iReport制作报表的详细 ...

  8. Windows环境下32位汇编语言程序设计(典藏版)

    Windows环境下32位汇编语言程序设计(典藏版)(含CD光盘1张)(年,经典再现!) 罗云彬 著 ISBN 978-7-121-20759-4 2013年7月出版 定价:99.00元 756页 1 ...

  9. Windows环境下 Node和NPM个性安装

    常拿自己的电脑常用来测试各种Bug,所以始终奋斗在XP.IE6的环境下.让我们在如此级别的环境下,开始Node之路吧~~ 在过去,Node.js一直不支持在Windows平台下原生编译,需要借助Cyg ...

随机推荐

  1. DateTimePicker控件为空 分类: WinForm 2014-04-15 09:46 239人阅读 评论(0) 收藏

    设置属性:                 Format=Custom 加载事件:ValueChanged    private void dtpStart_ValueChanged(object s ...

  2. js日期控件demo

    最近在钻研前端,写了个日期控件,内涵代码注释,希望能帮助到大家~ 1.html代码 <!DOCTYPE html> <html xmlns="http://www.w3.o ...

  3. Java里的IO流里的FileInputStream 的读取并在前打印行数!

    大家好!!新人求罩! import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException ...

  4. OpenStack Cinder源代码流程简析

    版权声明:本博客欢迎转载,转载时请以超链接形式标明文章原始出处!谢谢! 博客地址:http://blog.csdn.net/i_chips 一.概况 OpenStack的各个模块都有对应的client ...

  5. 给tcpdump加点颜色看看

    http://blog.csdn.net/voidccc/article/details/38797685

  6. poj2993 poj2669

    扯淡题. 2993 #include <iostream> #include <stdio.h> #include <string> #include <st ...

  7. S2SH框架集成详解(Struts 2.3.16 + Spring 3.2.6 + Hibernate 3.6.10)

    近期集成了一次较新版本的s2sh,出现了不少问题,网上资料也是良莠不齐,有的甚至就是扯淡,简单的把jar包扔进去就以为是集成成功了,在这里整理一下详细的步骤,若哪位有什么不同看法,可以留言,欢迎批评改 ...

  8. iOS---多线程实现方案一 (pthread、NSThread)

    在iOS开发中,多线程是我们在开发中经常使用的一门技术.那么本文章将和大家探讨一下针对于多线程的技术实现.本文主要分为如下几个部分: iOS开发中实现多线程的方式 单线程 pthread NSThre ...

  9. java.util.Date和java.sql.Date

    java.util.Date是在除了SQL语句的情况下面使用的. java.sql.Date是针对SQL语句使用的,它只包含日期而没有时间部分 它们都有getTime方法返回毫秒数,自然就可以直接构建 ...

  10. JS获取客户端的窗口大小

    function getClientSize() {    var c = window,    b = document,    a = b.documentElement;    if (c.in ...