解压OpenSSL以后, 在其目录下可以发现有个INSTALL.W32文件,这个文件就是在windows下的安装说明。你可以用UltraEdit打开它

1.安装perl,perl可以从http://www.activestate.com/ActivePerl下载。

2.安装编译器(任意一个都可以),我仅以Visual C++为例子。

Visual C++
    Borland C
    GNU C (Cygwin or MinGW)

3.如果通过汇编的方式编译,需要安装汇编语言编译器。MASM NASM都可以。如果速度要求不高,可以不用汇编的方式编译,即不需

要安装。MASM一般由VC++自带,Windows NT 4.0 DDK a和Windows 98 DDK也带有MASM。把XXXXXml.exe和XXXXXml.err文件,提取出

来,命名为ml.exe和ml.err,并把他们放到PATH路径 中即可。

NASM可以免费获取,很多地方都可以下载到,如http://www.kernel.org/pub/software/devel/nasm/binaries/win32/

nasmw.exe文件也需要放到PATH路径中。

4.打开一个DOS窗口,输入:perl Configure VC-WIN32

5.如果使用MASM,接着输入:ms\do_masm

如果使用NASM,接着输入:ms\do_nasm

如果不使用汇编语言编译器,输入:ms\do_ms

6.在DOS窗口中接着输入:nmake -f ms\ntdll.mak

如果没有错误的话,编译就通过了,在out32dll目录下面就可以看到,生成的dll文件和可执行文件了。把他们放到,PATH环境变量

对应的一个目录里就可以了。

如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)
1、安装ActivePerl//初始化的时候,需要用到perl解释器
2、使用VS2005下的Visual Studio 2005 Command Prompt进入控制台模式(这个模式会自动设置各种环境变量)
3、解压缩openssl的包,进入openssl的目录
4、perl configure VC-WIN32
尽量在这个目录下执行该命令,否则找不到Configure文件,或者指定完整的Configure文件路径。
5、ms\do_ms
在解压目录下执行ms\do_ms命令
6、nmake -f ms\ntdll.mak

编译后
在openssl解压目录下执行,完成编译后。输出的文件在out32dll里面,包括应用程序的可执行文件、lib文件和dll文件

注 意:在运行第五步时,cl编译器会抱怨说.\crypto\des\enc_read.c文件的read是The POSIX name for this item is

deprecated(不被推荐的),建议使用_read。呵呵,我可不想将OpenSSL中的所有的read函数修改为_read。再看cl的错误代码

error C2220,于是上MSDN上查找:
warning treated as error - no object file generated
/WX tells the compiler to treat all warnings as errors. Since an error occurred, no object or executable file was

generated.
是由于设置了/WX选项,将所有的警告都作为错误对待,所以。。。

于是打开OpenSSL目录下的MS目录下的ntdll.mak文件,将CFLAG的/WX选项去掉,存盘。。。
继续执行nmake -f ms\ntdll.mak

于是成功。。。
(我下载的是openssl-0.9.8a版本)

准备工作:

1. 安装Visual C++ 6.0:

在安装VC6.0的时候直接注册了环境变量后面会省略一个步骤。

已经从OpenSSL0.9.7i开始支持VC2005了,所以安装2005也可以。

2. 安装Perl5:

在网上搜索一下ActivePerl For Windows,我们需要的是for win32 x86版本的ActivePerl,它是Windows环境下的PERL语言解释器

,其中就包括Perl for Win32。

3. 下载并解压OpenSSL:

到http://www.openssl.org/找一个源码包,目前0.9.8g是最新的版本了,下载到本地并且解压到一个目录下。

准备工作完成,开始编译。在OpenSSL源码包中有INSTALL、INSTALL.MacOS、INSTALL.NW、
INSTALL.OS2、INSTALL.VMS、INSTALL.W32、INSTALL.W64 和 INSTALL.WCE等文件,这些文件就是为不同的操作系统安装OpenSSL准

备的,Win32环境下当然是学习INSTALL.W32这个文件,整个编译安装过程里面写的很清楚:

1. 控制台下进入OpenSSL文件夹,运行配置文件(run Configure):

> perl Configure VC-WIN32

2. build the Makefiles and optionally the assembly language files:

- If you are using MASM then run:

> ms\do_masm

- If you are using NASM then run:

> ms\do_nasm

- If you don't want to use the assembly language files at all then run:

> ms\do_ms

里面都说了,如果你不想用汇编语言文件,就用第三种咯。

3. 生成库文件:

回车后就进入编译状态了,等待编译完成后,在OpenSSL目录下会多出几个文件夹,其中out32dll中得到链接库文件和可执行程序,

inc32中是生成的头文件。这些库文件加上头文件就可以拿去用了。

4. 如何还想进行安装:

> nmake -f ms\ntdll.mak

btw: 如果控制台说nmake不是命令,说明VC的环境变量没有注册。在VC安装目录下的\VC98\bin目录下执行:

这样环境变量就注册好了。再试试nmake吧

转载于:https://blog.51cto.com/fenice/551920

[转载]安装openssl,windows版相关推荐

  1. php apache配置测试端口,详解安装配置Windows版apache服务器及压力测试

    下载Apache 1.下载地址: http://httpd.apache.org/download.cgi 2.点击链接Files for Microsoft Windows: 安装步骤 1.先安装a ...

  2. windows media player 9_openmeetings(开源视频会议系统)的详细安装步骤 (windows版)

    一.开源视频会议系统openmeetings的简介: OpenMeetings是一个多语言可定制的视频会议和协作系统.它支持音频.视频,能让你查看每个与会者的桌面.OpenMeetings还包含一个白 ...

  3. mysql for windows_mysql安装教程-windows版

    一.前言 正所谓磨刀不误砍柴工,不管是在平时练习sql,书写项目等都离不开数据库,今天我们就好好的整理下mysql的安装,本文主要针对mysql初学者. 二.正文 1.mysql的下载 image.p ...

  4. Lammps安装教程 windows版

    1.首先下载Lammps和MPICH的安装包 安装.NET Framework 3.5 (控制面板->程序->启用或关闭Window功能) 管理员用户设置密码 2.安装MPICH 以管理员 ...

  5. PostgreSQL 安装教程 Windows版

    PostgreSQL下载及Windows系统安装步骤 一.下载PostgreSQL压缩包 网址:https://www.enterprisedb.com/download-postgresql-bin ...

  6. Canal安装说明(Windows版)

    第一步: 从github上下载. https://github.com/alibaba/canal/releases/ 注:Mysql不用低于5.6,建议下载版本:v1.1.4,稳定些 第二步: 开启 ...

  7. PyAutoIt 安装(Windows 版)

    转载于:https://www.cnblogs.com/Crixus3714/p/9592635.html

  8. 转载:微信Windows版-无效的wechatwin.dll文件errcode:126,点击“确定”下载最新版本

    昨天更新的微信Windows版本的3.7.5.31,打开微信提示"无效的wechatwin.dll文件errcode:126,点击"确定"下载最新版本". Wi ...

  9. MySQL下载和安装教程--windows版

            MySQL初学者对于安装MySQL都会遇到一些问题甚至会被这些问题搞得将近崩溃,这里给出当初我从下载MySQL到安装成功启动的过程,图有点多,但过程并不复杂,希望帮助到大家. 一.下载 ...

最新文章

  1. [C#1] 9-委托
  2. Java项目:在线水果商城系统(java+JSP+Spring+SpringMVC +MyBatis+html+mysql)
  3. 照抄不翻车:抗住千万流量的大型分布式系统架构设计
  4. SSIS - 5.优先约束
  5. 一个方框,文字在边框上
  6. python自动测试u_自动化测试——Selenium+Python之下拉菜单的定位
  7. 面试问烂的 MySQL 四种隔离级别,看完吊打面试官!
  8. 聊聊Tomcat的架构设计
  9. 查找数组中任一峰值的下标
  10. day15 java接口的基础语法
  11. L1-029. 是不是太胖了
  12. 第1章第26节:如何通过幻灯片母版统一管理相同类型的幻灯片2 [PowerPoint精美幻灯片实战教程]
  13. 游戏运营的工作中是做什么
  14. 《猎头局中局》观后感
  15. java中的保护(protected)修饰符的理解
  16. 从iOS切换到Android(flyme)
  17. 缓存击穿和雪崩常用解决方案
  18. 《赋能》的读后感作文2800字
  19. python 判断是否是元音字母
  20. [杂言] GoodBye,2016

热门文章

  1. Nginx 的 default_server 指令
  2. 2016年全球电信市场资本支出略增0.7%至3140亿美元
  3. ASP.NET MVC 入门3、Routing
  4. 基于角色的权限设计(二)
  5. 小小一招巧解任何电脑的开机密码,无需任何工具,无需放电
  6. 路由器默认密码(转自ITAA)
  7. 一种巧妙的drawable.xml替代方案
  8. js 操作json对象增删改
  9. 【noi 2.5_8465】马走日(dfs)
  10. Silverlight学习之——如何在 Silverlight 中使用 Deep Zoom