Windows下安装OpenSSL及其使用
方法一:
Windows binaries can be found here:
http://www.slproweb.com/products/Win32OpenSSL.html
You can do this conversion with the OpenSSL library
方法二:(手动编译)
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及其使用的更多相关文章
- Windows下安装openssl
安装python类库cryptography1.6提示 build\temp.win-amd64-2.7\Release\_openssl.c(429): fatal error C1083: Can ...
- [转] Windows下编译OpenSSL
简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...
- Windows编译安装OpenSSL
windows下使用vs2008中的nmake编译安装openssl的脚本build.bat: echo off & color 0A :: 项目名称 set PROJECT=openssl ...
- 在Windows下编译OpenSSL(VS2005和VC6)
需要说明的是请一定安装openssl-0.9.8a . openssl-1.0.0我没有编译成功. 如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)1.安装Activ ...
- Windows下编译OpenSSL(使用VS2013)
简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...
- Windows 下使用OpenSSL生成RSA公钥和私钥
Windows 下使用OpenSSL生成RSA公钥和私钥 (1)下载OpenSSL 可到该地址下载OpenSSL: https://www.openssl.org/source/(https://ww ...
- 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)
相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...
- Windows 下安装 MongoDB
Windows 下安装 MongoDB 的步骤:1.官网www.mongodb.com下载安装包或zip包2.解压下载的文件到文件夹 D:\mongo .3.使用管理员权限打开CMD,导航到目录 D: ...
- Coreseek Windows下安装调试
由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...
随机推荐
- superobject
GITHUB: https://github.com/hgourvest/superobject # SuperObject ## What is JSON ? - JSON (JavaScript ...
- symbol(s) not found for architecture armv7
Undefined symbols for architecture i386: “_OBJC_CLASS_$_XXX”, referenced from: objc-class-ref in XXX ...
- CATransform3D的m34值动画
CATransform3D的m34值动画 效果 源码 https://github.com/YouXianMing/Animations // // CATransform3DM34Controlle ...
- Rsync服务介绍与配置
Rsync 简要介绍 rsync 是一个用于增量文件传输的开源工具,不得不说,rsync简直是不同服务器间传输文件.同步文件的利器.与FTP相比,它具有非常简单的安装和配置方法.而且,rsync可以只 ...
- C/C++中内联(inline)函数的优点和缺点
优点 缺点 1. 内联函数代码被放入符号表中,在使用时进行替换,和宏展开一样,效率很高: 1. 不允许过多的代码,代码过多的话会造成大的内存消耗,最好在5行以内: 2. 编绎器在调用一个内联函数,首先 ...
- libjson 编译和使用 - 2. 配置使用lib文件
以下转自:http://blog.csdn.net/laogong5i0/article/details/8223448 1. 在之前的libjson所在的解决方案里新建一个控制台应用程序,叫Test ...
- RV 多样式 MultiType 聊天界面 消息类型 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Singleton 单例模式 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Android界面设计之对话框——定制Toast、AlertDialog
一.概述 在界面设计中需要根据用户操作显示提示信息.出错信息等,就要用到对话框.Android实现提示信息显示常用有两种方式 1.Toast 2.AlertDialog 二.Toast Android ...
- Shell程序荟萃
--------------纯输出----------------1.sh #!/bin/sh echo -e "Hello!world!\a\n"exit 0 --------- ...