方法一:

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选项

转载于:https://www.cnblogs.com/zhengah/p/4998215.html

Windows下安装OpenSSL及其使用相关推荐

  1. Windows下安装Cygwin配置Hadoop集群

    Hadoop集群一般是配置到Linux系统之上,如果电脑用的是Windows系统,那么可以通过虚拟机安装Linux系统或者在Windows上安装Cygwin来模拟Linux环境,从而搭建Hadoop集 ...

  2. 在Windows下编译OpenSSL(VS2005)【转】

    如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器) 1.安装ActivePerl//初始化的时候,需要用到perl解释器 2.使用VS2005下的Visual Studi ...

  3. Windows下配置OpenSSL(傻瓜式教程,一看就会)

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 OpenSSL是什么? SSL是Secure Sockets Layer(安全套接层协议)的缩写 ...

  4. windows下安装 swoole

    ** windows下安装 swoole Cygwin安装swoole ** swoole 是php 的扩展,只支持在Linux 下,所以在window 下需要 安装cgywin,Cygwin是一个在 ...

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

    转自https://www.cnblogs.com/findumars/p/4299976.html 简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和 ...

  6. WIN7下安装openssl

    WIN7下安装openssl 一.安装openssl 安装前提,安装需要下载 Perl 和 Microsoft Platform SDK,VC 1.安装 ActivePerl openssl需要使用p ...

  7. 基于svnserve的SVN服务器(windows下安装与配置)

    基于svnserve的SVN服务器(windows下安装与配置) 关键字: svn 安装SVNserve 从http://subversion.tigris.org/servlets/ProjectD ...

  8. Windows下安装Z3的Python3版

    文章目录 Windows下安装Z3的Python3版 pip 安装(不推荐,很慢) 使用微软官方构建好的DLL(推荐,快速) Windows下安装Z3的Python3版 GitHub官方仓库地址:Z3 ...

  9. 在windows下安装concurrentlua

    concurrentlua的makefile只提供了unix下的版本,如果直接按make里面得拷贝路径安排文件 在windows下是无法凑效的.这里我把我在windows下安装concurrentlu ...

最新文章

  1. 黑马程序员_Java解析网络数据流的三种特殊方法
  2. 解除计算机软件开发协议书,计算机软件著作权转让的协议书
  3. csgo卡程序关不掉_微信推QQ小程序,取代QQ?网友:这功能有用?
  4. 小米开源文件管理器MiCodeFileExplorer-源码研究(3)-使用最多的工具类Util
  5. [原创]Retrofit使用教程(二)
  6. windows新添开机启动项
  7. (事件类型: 警告;事件代码:3005)的解惑
  8. matlab求微分数值,用MATLAB语言求微积分方程的数值解.(xd^2y)/dx^2-5dy/dx+y=0y(0)=0y'(0)=0...
  9. java dvr_java实现海康NVR/DVR设备工作状态获取
  10. 杭电2112(SPFA)
  11. dpkg: 依赖关系问题使得 linux-headers-5.7.19-050719-generic 的配置工作不能继续
  12. 关于position定位的总结
  13. win10怎么关机 win10关机快捷键大全
  14. 基础平台项目之树形菜单权限配置实现
  15. 电子信息类包含计算机科学与技术么,电子信息类和计算机类有什么区别
  16. Win11亮度无法调节解决方法(在卸载驱动,关闭自适应亮度和修改注册表都行不通的情况下)
  17. 12_STM32Cubeide开发_USB从设备串口驱动程序
  18. [Matlab]椭圆滤波器设计:低通、高通、带通和带阻(4)
  19. MySQL 实现FULL JOIN的几种方式
  20. 用R语言画一朵玫瑰花

热门文章

  1. 网站被写入恶意代码的主要原因及防范策略
  2. [1.1]XMI 与UML结合开发企业应用中业务模型
  3. Mysql计算出年纪
  4. (三)、Express 路由、静态文件、
  5. luoguP5035金坷垃
  6. 设计模式(十九)—— 备忘录模式
  7. 更改jenkins的默认工作空间并迁移插件和配置数据
  8. vim 实际行跟屏幕行移动命令
  9. 网络模块(客户端的连接动作)
  10. 学习JavaScript的24条实用建议