方法一:

Windows binaries can be found here:

http://www.slproweb.com/products/Win32OpenSSL.html

You can do this conversion with the OpenSSL library

http://www.openssl.org/

方法二:(手动编译)

1. 下载最新版本的Perl,安装后重启系统。

http://www.activestate.com/activeperl/downloads

2.下载 latest openssl并解压到C:\openssl-0.9.8k。

http://www.openssl.org/source/

参考openssl目录下的install.win32说明进行安装:

1、进入解压目录。

>cd C:\openssl-0.9.8k

2、运行Configure。

>perl Configure VC-WIN32

>perl Configure VC-WIN32 no-asm -DOPENSSL_USE_IPV6=0

【执行" perl Configure VC-WIN32 no-asm -DOPENSSL_USE_IPV6=0" no-asm表示没有用NASM编译,DOPENSSL_USE_IPV6=0 禁用IPV6,避免出现NMAKE : fatal error U1077: 'cl' :
return code '0x2'错误;这里为什么VC-WIN32,而不是64 ,我想应该是我们的IDE vc6.0是32的。】

如不成功会有明显提示。

3、创建Makefile文件。

>ms\do_ms

推荐使用这种方式,另外两种方式 如果使用也必须保证本机有编译器才能使用。

:ms\do_masm (默认vc 自带的编译器;也也以自己下载安装)

:ms\do_nasm (需要自己下载)

4、配置VC环境变量。

>cd C:\Program Files\Microsoft Visual Studio\VC98\Bin

>vcvars32.bat

5、编译动态链接库。

>cd C:\openssl-0.9.8k

>nmake -f ms\ntdll.mak

可能会缺少“ml.exe”,可下载masm并把其中的ml.exe拷贝至C:\Program Files\Microsoft Visual Studio\VC98\Bin下即可。

运行 nmake -f ms\ntdll.mak test.检查上一部编译是否成功。正常的话会执行编译后的测试程序

至此OpenSSL在windows下编译完成,编译得到的dll和lib文件位置:静态库libeay32.lib和ssleay32.lib位于 out32文件夹下,动态库libeay32.dll,libeay32.lib,ssleay32.dll,ssleay32.lib位于 out32dll文件夹下。

6、为VC添加头文件和静态链接库路径。

ToolsàOptionsàDirectores,在Include files中增加C:\openssl-0.9.8k \inc32目录;在Libray files中增加C:\openssl-0.9.8k\out32dll。

7、编写OpenSSL程序,可参考C:\openssl-0.9.8k\demos

(1)包含相应头文件

#include <openssl/***.h>

(2) 添加静态链接库

#pragma comment(lib, "libeay32.lib")

#pragma comment(lib, "ssleay32.lib")

或ProjectàSettingsàLinkàObject\library modules填写libeay32.lib ssleay32.lib。

(3)将动态链接库ssleay32.dll, libeay32.dll复制到C:\WINDOWS\system32或Debug目录下,确保动态链接库在正确的路径。

可能遇到的问题:

1、NMAKE : fatal error U1077: 'ml' : return code '0x1'

解决办法:在环境变量PATH中添加路径C:\masm32\bin,并按照参考资料3修改ml.exe文件。

2、NMAKE : fatal error U1077: 'cl' : return code '0x2'

解决办法:去掉ipv6(命令行中执行perl Configure VC-WIN32 -DOPENSSL_USE_IPV6=0)

3、fatal error LNK1103: debugging information corrupt; recompile module

解决办法:去掉ms文件夹下对应文件nt.mak或ntdll.mak文件中/debug选项

Windows下安装OpenSSL及其使用的更多相关文章

  1. Windows下安装openssl

    安装python类库cryptography1.6提示 build\temp.win-amd64-2.7\Release\_openssl.c(429): fatal error C1083: Can ...

  2. [转] Windows下编译OpenSSL

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

  3. Windows编译安装OpenSSL

    windows下使用vs2008中的nmake编译安装openssl的脚本build.bat: echo off & color 0A :: 项目名称 set PROJECT=openssl ...

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

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

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

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

  6. Windows 下使用OpenSSL生成RSA公钥和私钥

    Windows 下使用OpenSSL生成RSA公钥和私钥 (1)下载OpenSSL 可到该地址下载OpenSSL: https://www.openssl.org/source/(https://ww ...

  7. 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)

    相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...

  8. Windows 下安装 MongoDB

    Windows 下安装 MongoDB 的步骤:1.官网www.mongodb.com下载安装包或zip包2.解压下载的文件到文件夹 D:\mongo .3.使用管理员权限打开CMD,导航到目录 D: ...

  9. Coreseek Windows下安装调试

    由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...

随机推荐

  1. 系统字体的Regular、Light等几种名称的区别

    以苹果系统中的PingFang SC系列字体为例,其中常见的有下面几种类型可以细分如下. PingFang SC ExtraLight         苹方 特细 PingFang SC Light  ...

  2. 想要快速上手 Spring Boot?看这些教程就足够了!| 码云周刊第 81 期

    原文:https://blog.gitee.com/2018/08/19/weekly-81/ 想要快速上手 Spring Boot?看这些教程就足够了!| 码云周刊第 81 期 码云周刊 | 201 ...

  3. 高手写的“iOS 的多核编程和内存管理”

    原文地址:http://anxonli.iteye.com/blog/1097777 多核运算 在iOS中concurrency编程的框架就是GCD(Grand Central Dispatch), ...

  4. iOS抽屉效果

    源代码下载 抽屉效果第三方类库下载 所需第三方类库下载 側拉栏抽屉效果图 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvTUhUaW9z/font/5a6L ...

  5. 最小二乘法least square

    上研究生的时候接触的第一个Loss function就是least square.最近又研究了一下,做个总结吧. 定义看wiki就够了.公式如下 E(w)=12∑n=1N{y−xWT}2E(w)=12 ...

  6. Git教程之工作区和暂存区

    工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区:

  7. C 图像处理 颜色相关宏定义

    很多年前整理的,像素处理的宏定义,包括r8g8b8到r5g6b5之间的相互转化,浮点数像素与整数值之间的相互转化,像素值的插值.取反等处理.具体没什么好说的,宏定义的代码还是很容易看的.这套东西对搞图 ...

  8. jquery json实现二级动态联动

    以下为代码!需要导入json架包 function getCity1(){ var unitid = document.getElementById('addformunitid').value; $ ...

  9. SQL Server AlwaysOn Setup Step-By-Step Guide

    Step-By-Step: Creating a SQL Server 2012 AlwaysOn Availability Group http://blogs.technet.com/b/cani ...

  10. Windows服务器PHPstudy配置安装微擎教程

    此教程只适于无环境的新服务器,有环境请勿安装用电脑上面的远程桌面连接登陆服务器.1,下载微擎安装包,下载PHPstudy,下载V9运行库.安装PHPstudy.安装V9运行库.准备好3个. <i ...