安装环境:

操作系统:window7(64位)

C++编译器:VS2010

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

工具下载:

下载ActivePerl-5.16.3.1604(其他版本也可以):

下载地址:http://www.activestate.com/activeperl/downloads/      (安装过程只要按照Windows下一般程序的安装步骤进行即可)

下载openssl-1.0.1g(其他版本也可以)并解压

下载地址:http://www.openssl.org/source/(建议解压后的文件路径为C:\openssl,PS:只是为了下文的内容匹配,并且方便寻找,其他路径也无不影响)。

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

安装Perl

(我的安装目录为C:\Perl64)

运行”CMD“命令,使用cd命令将运行目录指向perl安装目录的eg文件夹, 执行“perl example.pl”若显示“Hello from ActivePerl!”,则说明Perl安装成功,可以开始使用Perl的相关命令来进行OpenSSL的安装了。

(PS:如果你想看看原始的INSTALL文件,那么请打开OpenSSL的解压缩目录,下面有两个文件INSTALL.W32和INSTALL.W64,用记事本方式打开,你可以看到详细的关于安装的解释)

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

安装openssl

(最关键的步骤来了)

1)首先设定好环境变量,这步参照网上的教程后发现后面的编译步骤不成功,找了很就才发现是这部设置的不对才导致的。

设定环境变量:桌面计算机图标右键->属性->高级系统设置->环境变量->在系统变量当中找到变量名称为path的变量(如果没有找到这新建)点击编辑->在变量名称中填入"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin;C:\Perl64\bin;c:\windows\system32"->点击确定完成设定。(说明:C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin路径是VS2010的路径。C:\Perl64\bin是运行perl的路径,不若不设定那么perl命令将找不到。c:\windows\system32这个路径很少提到但是很重要,如果不设置那么会造成后面vcvars32.bat环境变量执行出错。)到此环境变量路径设置好之后重启下电脑才能生效。

2)使用Visual Studio命令提示(2010)进入控制台模式

开始菜单->所有程序->Microsoft Visual Studio 2010->Visual Studio Tools->Visual Studio命令提示(2010),(PS:以管理员身份运行), 使用cd命令将目录指向C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin(PS:自己的VC安装路径), 命令行键入vcvars32,运行vcvars32.bat..完成后进入OpenSSL源码的目录(C:\openssl)

3)执行Configure命令(配置编译参数)(需将目录跳到OpenSSL源码目录下)

在命令行中键入"perl configure VC-WIN32 --prefix=c:\openssl"(PS:--prefix=c:\openssl命令为指定安装位置)

4)运行ms\do_ms命令(需将目录跳到OpenSSL源码目录下)

在命令行中键入”ms\do_ms“。

5)运行“nmake -f ms\ntdll.mak”命令进行代码编译(需将目录跳到OpenSSL源码目录下)

编译分两种情况,生成静态库和动态库
  (1) 如果是编译OpenSSL动态库,则在命令行键入 nmake -f ms\ntdll.mak
    编译成功课在文件夹out32dll里面查看输出的文件,包括应用程序的exe文件、lib文件、dll文件。
  (2) 如果是编译OpenSSL静态库,则在命令行键入 nmake -f ms\nt.mak
    编译成功课在文件夹out32里面查看输出的文件,包括应用程序的exe文件、lib文件。

6)测试使用命令“nmake -f ms\ntdll.mak test”(若安装成功则可以使用此命令来验证)

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

使用openssl

当VS2010工程需要用到openssl库时,在包含目录中胎添加openssl安装目录的include目录, 来库目录中添加out32dll目录。

或者将OpenSSL下的include文件夹、lib文件、dll文件考出,使用的时候包含进去就行了。

另外还有几个命令可能会用到:

  测试OpenSSL动态库:nmake -f ms\ntdll.mak test
  测试OpenSSL静态库:nmake -f ms\nt.mak test
  安装OpenSSL动态库:nmake -f ms\ntdll.mak install
  安装OpenSSL静态库:nmake -f ms\nt.mak install
  清除上次OpenSSL动态库的编译,以便重新编译:nmake -f ms\ntdll.mak clean
  清除上次OpenSSL静态库的编译,以便重新编译:nmake -f ms\nt.mak clean

参考博客:http://blog.chinaunix.net/uid-20479991-id-216269.html

http://www.cnblogs.com/moonset7/archive/2009/12/18/1627317.html

http://blog.csdn.net/joeblackzqq/article/details/36430027

Window7下安装openssl完整版(亲测实现)的更多相关文章

  1. Ubuntu16.04 下如何安装搜狗拼音输入法【亲测有效】

    Ubuntu16.04 下如何安装搜狗拼音输入法[亲测有效]   一.添加fcitx键盘输入法系统[系统默认是iBus] 1.将下载源添加至系统源: sudo add-apt-repository p ...

  2. Navicat Premium 12.0.24安装与激活(亲测已成功激活)

    另请参见:Navicat Premium 12.0.18 / 12.0.24安装与激活 另请参见:Navicat Premium 12安装与激活(亲测已成功激活) 说明: 本主亲自验证过,可以激活! ...

  3. [转帖]redhat7.6Linux安装Oracle19C完整版教程

    redhat7.6Linux安装Oracle19C完整版教程 https://www.oracle.com/technetwork/database/enterprise-edition/downlo ...

  4. window7下安装第三方包报错及解决

    window7 64位下安装第三方包,,比如安装yaml的exe执行文件,会 报错及解决:python version 2.7(3.4) required,which was not found in ...

  5. ubuntu下安装 openssl 开发库

    ubuntu下安装 openssl 开发库 检查是否已安装openssl: sudo apt-get install openssl 如果已安装执行以下操作:sudo apt-get install ...

  6. window7 下 安装 apache24(httpd-2.4.10-x86-r2)加 php5.6(php-5.6.4-Win32-VC11-x86)加yaf(php_yaf-2.3.3-5.6-ts-vc11-x86)整合

    window7 下 安装 apache24(httpd-2.4.10-x86-r2)加 php5.6(php-5.6.4-Win32-VC11-x86)加yaf(php_yaf-2.3.3-5.6-t ...

  7. 详解Linux(centos7)下安装OpenSSL安装图文方法

    OpenSSL是一个开源的ssl技术,由于我需要使用php相关功能,需要获取https的文件所以必须安装这个东西了,下面我整理了两种关于OpenSSL安装配置方法. 安装环境:  操作系统:CentO ...

  8. Windows7系统下安装OpenSSL攻略

    Windows7系统下安装OpenSSL攻略 http://blog.chinaunix.net/uid-20479991-id-216269.html http://my.oschina.net/s ...

  9. [转]详解Linux(centos7)下安装OpenSSL安装图文方法

    OpenSSL是一个开源的ssl技术,由于我需要使用php相关功能,需要获取https的文件所以必须安装这个东西了,下面我整理了两种关于OpenSSL安装配置方法. 安装环境:  操作系统:CentO ...

随机推荐

  1. 修复ubuntu播放wmv等视频没有声音问题

    1. Mplayer or SMplayer 1.1 原因: 很可能是你没有安装 w32codes 1.2 解决方法: (1)下载 w32codes 官方站点 all-20110131.tar.bz2 ...

  2. 《Java并发编程实战》第十四章 构建自己定义的同步工具 读书笔记

    一.状态依赖性的管理 有界缓存实现的基类 @ ThreadSafe public abstract class BaseBoundedBuffer<E> { @GuardeBy( &quo ...

  3. TCP三次握手和四次挥手具体解释

    三次握手:建立TCP须要三次握手才干建立, 先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源.Client端接收到ACK报文后也向Server段发生ACK ...

  4. GridView控件-01-[简单的数据显示]

    GridView绑定数据分为两种,一种是多值绑定,另一种是字段绑定. 多值绑定(直接绑定到数据源就行,不需要使用字段): 前台代码: <asp:GridView ID="GridVie ...

  5. js中with、this的用法

    with 语句 为一个或一组语句指定默认对象. 用法:with (<对象>) <语句>; with 语句通常用来缩短特定情形下必须写的代码量.在下面的例子中,请注意 Math ...

  6. java--内部类访问final成员

    局部类只能访问外包方法中的final成员.位于方法内部的局部类,可以访问局部类之外,外包方法之内的所以变量和方法,但是生命周期不同,延长生命周期的办法就是将变量设置为final类型. 1)从程序设计语 ...

  7. 公司需求知识学习-WCF

    一.概述 Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通讯接口,它是.NET框架的一部分.由 .NE ...

  8. VS2010 安装 Boost 库 1.54

    Boost库被称为C++准标准库, 功能很是强大, 下面记录我在VS2010中安装使用Boost库的过程. 首先上官网http://www.boost.org/下载最新的Boost库, 我的版本是1_ ...

  9. POJ 3301 Texas Trip

    题目大意: 在二维坐标系中给出一些点.求能覆盖他们的最小正方形的面积(正方形的边不一定平行坐标轴) 解题思路: 对于一个点.若坐标轴旋转a度(弧度制).那么X'=X*cos(a)-Y*sin(a);Y ...

  10. Ormlite自定义db的位置和自动更新问题

    先说说以下为测试代码,有点乱,大家讲究着看.以下例子都是采用的ormlite的框架. 第一步,自定义数据库的位置: 建议一个类DatabaseHelper 继承 OrmLiteSqliteOpenHe ...