近期工作中使用到了openssl的win64位资料,所以进行前期调研,汇总结果例如以下:

【注意】openssl代码所在文件夹中不要带中文,否则“nmake -f ms\ntdll.mak ”可能会提示“宏中非法字符”等错误

一、Openssl WIN7 x64 编译

   环境:WIN7 64位。编译器:VS2010

   须要下载 Perl(如http://downloads.activestate.com/ActivePerl/releases/5.16.3.1603/ActivePerl-5.16.3.1603-MSWin32-x64-296746.msi)和
Microsoft Platform SDK(VS2005或VS2010)

0.进入cmd,运行 C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\vcvars64.bat

   #拷贝 C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\ml64.exe 到ms文件夹下(假设ml64.exe已经有了,就不须要拷贝)

1.启动VS2010的控制台,可以配置相关的环境变量——(可省略)

2.进入opensll文件夹,如cd C:\openssl-0.9.8k

3.x64的编译命令:

  > perl Configure VC-WIN64A

  > ms\do_win64a 创建Makefile文件

  > nmake -f ms\ntdll.mak  编译动态库(等待时间较长)

  > nmake -f ms\ntdll.mak test   检查上一步编译是否成功

  > nmake -f ms\ntdll.mak install  安装编译后的openssl到指定文件夹

可选指令

  > nmake -f ms\ntdll.mak clean  清除上次OpenSSL动态库的编译(依据须要,选择是否编译静态库)

  > nmake -f ms\nt.mak   编译静态库(依据须要,选择是否编译静态库)

  > nmake -f ms\nt.mak clean  清除上次OpenSSL静态库的编译(依据须要,选择是否编译静态库)

二、在windows下编译openssl(32位)

   环境:WIN7 64位,编译器:VS2010

   须要下载 Perl(如http://downloads.activestate.com/ActivePerl/releases/5.16.3.1603/ActivePerl-5.16.3.1603-MSWin32-x64-296746.msi)和
Microsoft Platform SDK(VS2005或VS2010)

0.进入cmd,运行 C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat

   #拷贝 C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\ml.exe 到ms文件夹下(假设ml.exe已经有了,就不须要拷贝)

1.启动VS2010的控制台,可以配置相关的环境变量——(可省略)

2.进入opensll文件夹。如cd C:\openssl-0.9.8k

3.x86的编译命令:

  > perl Configure VC-WIN32

  创建Makefile文件

   如用masm,执行ms\do_masm命令

   如用nasm, 执行ms\do_nasm

   假设什么都没用,执行ms\do_ms

> nmake -f ms\ntdll.mak  编译动态库(等待时间较长)

  > nmake -f ms\ntdll.mak test   检查上一步编译是否成功

  > nmake -f ms\ntdll.mak install  安装编译后的openssl到指定文件夹

可选指令

  > nmake -f ms\ntdll.mak clean  清除上次OpenSSL动态库的编译(依据须要,选择是否编译静态库)

  > nmake -f ms\nt.mak   编译静态库(依据须要,选择是否编译静态库)

  > nmake -f ms\nt.mak clean  清除上次OpenSSL静态库的编译(依据须要。选择是否编译静态库)

Windows平台编译openssl-0.9.8k库(32位、64位)的更多相关文章

  1. Win7 下用 VS2015 编译最新 openssl(1.0.2j)包含32、64位debug和release版本的dll、lib(8个版本)

    Win7 64位系统下通过VS2015编译好的最新的OpenSSL(1.0.2j)所有八个版本的链接库, 包含以下八个版本: 1.32位.debug版LIB: 2.32位.release版LIB: 3 ...

  2. Windows Server 2003 SP2 R2 企业版/标准版/32与64位 CD-KEY

    微软发布Windows Server 2003 R2版的目的是希望透过它填补Windows Server 2003 SP1和Longhorn Server之间的产品发布时间间隔.所以Windows S ...

  3. [转] Windows下编译OpenSSL

    简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...

  4. 在Windows下编译OpenSSL(VS2005和VC6)

    需要说明的是请一定安装openssl-0.9.8a .  openssl-1.0.0我没有编译成功. 如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)1.安装Activ ...

  5. windows 如何编译 Openssl ?

    windows 如何编译 Openssl ? 编译环境 VS2015 Openssl 1.0.2 ActivePerl 5.24.3 x64 编译步骤 安装 ActivePerl 期间,勾选添加至环境 ...

  6. 利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl

    利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl 首先mingw的环境搭建,务必遵循下文: http://blog.csdn.net/ubuntu64fan/ar ...

  7. Windows下编译OpenSSL(使用VS2013)

    简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...

  8. dll文件32位64位检测工具以及Windows文件夹SysWow64的坑

    自从操作系统升级到64位以后,就要不断的需要面对32位.64位的问题.相信有很多人并不是很清楚32位程序与64位程序的区别,以及Program Files (x86),Program Files的区别 ...

  9. dll文件32位64位检测工具以及Windows文件夹SysWow64的坑(很详细,还有自动动手编程探测dll)

    阅读目录 dll文件不匹配导致数据库无法启动 究竟是System32还是SysWow64 区分dll文件32位64位的程序让我倍感迷惑 再次判断究竟是System32还是SysWow64——意想不到的 ...

随机推荐

  1. POJ3204 Ikki's Story - Road Reconstruction 网络流图的关键割边

    题目大意:一个有源有汇的城市,问最少增加城市中的多少道路可以增加源到汇上各个路径上可容纳的总车流量增加. 网络流关键割边集合指如果该边的容量增加,整个网络流图中的任意从原点到汇点的路径的流量便可增加. ...

  2. Windows 10彻底关闭自动更新

    关键点:把流量计费开启.

  3. Build website project by roslyn through devenv.com

    1.fetch the source code2.compile controls project3.copy files under bin folder of controls to bin fo ...

  4. oracle表类似:BIN$dJ5h8mA4Lr/gQAB/AQB0oA==$0 TABLE

    今天看到数据库中有很多类似: TNAME                          TABTYPE  CLUSTERID ------------------------------ ---- ...

  5. Node.js:目录

    ylbtech-Node.js:目录 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部 1. http://www.runoob.com/nodejs/nodejs ...

  6. Wannafly挑战赛25 A 因子 数学

    题面 题意:令 X = n!,给定一大于1的正整数p,求一个k使得 p ^k | X 并且 p ^(k + 1) 不是X的因子,n,,p(1e18>=n>=1e4>=p>=2) ...

  7. IP与以太网的包收发操作

    你好,这是<网络是怎样连接的>的第3篇读书笔记,第二章<用电信号传输TCP/IP>后半部分:IP与以太网的包收发操作. 先看下经典的TCP/IP四层模型: 通常,下层模块支撑上 ...

  8. Spring学习笔记之依赖的注解(2)

    Spring学习笔记之依赖的注解(2) 1.0 注解,不能单独存在,是Java中的一种类型 1.1 写注解 1.2 注解反射 2.0 spring的注解 spring的 @Controller@Com ...

  9. AVD的Hardware选项

    最近学习开发游戏,需要GLES2.0使用,使用Android虚拟机调试一直报错闪退.百度说Android 4.0及以后的版本[使用API15及以上]),已经支持GLES2.0,需要在HardWare选 ...

  10. readonly and const variable

    共同点:都是常量: 不同点:const的值必须在编译前确定,通常在声明的同时赋值:而readonly可在运行时确定: