此次安装是在XP下Openssl 的编译安装:
先下载Openssl源码、Perl for Win32
下载地址:
Openssl源码:http://www.openssl.org/source/
Perl for Win32:http://downloads.activestate.com/ActivePerl/Windows/5.8/
本文所用的版本分别为:
openssl-k.tar.gz
ActivePerl-.826-MSWin32-x86-290470.msi
这两个版本均为到目前(09年10月)为止较新的版本。
1.安装Perl。安装目录为C:\Perl。
2.运行“cmd”命令,使用cd命令指向perl安装目录的eg文件,并且执行“perl example.pl”应能显示“Hello from ActivePerl!”,表明Perl安装成功。
3.用WINRAR对openssl-k.tar.gz进行解压缩。注意,可能需要解压缩两次才能得到最后解包的文件,中间一次解压缩结果是.tar存档不压缩文件。目录为C:\openssl-0.9.8k。
4.执行Configure。cd命令指向C:\openssl-k。
运行命令“perl Configure VC-WIN32 –prefix=C:\openssl-k”(注意大小写区分),如下图。
5.运行命令“ms\do_ms”,如下图。
6.运行命令“nmake –f ms\ntdll.mak”,执行make进行编译,在此过程中会输出大量的信息,需要一分钟左右,如下图。
如果上一步编译成功,最后的输出都在out32dll目录下:包括可执行文件,两个dll和两个lib文件: libeay32.dll、libeay32.lib、ssleay32.dll、ssleay32.lib。
7.运行“nmake –f ms\ntdll.mak test”,可以检查上一步的编译是否成功,正常的话,make test会执行编译后的测试程序,如下图。(次步验证可以省略)
8.查看安装结果:
打开资源管理器,在C:\openssl-k\out32dll目录下将看到openssl.exe(openssl指令程序)、ssleay32.dll(SSL协议动态库)、libeay32.dll(密码算法库),两个lib文件,即ssleay32.lib和libeay32.lib,分别是ssleay32.dll、libeay32.dll动态库文件对应的lib文件。可以使用openssl.exe指令集完成很多密码操作,也可以使用头文件、dll、lib文件进行软件开发。
(注:本人以前用过openssl-e.tar.gz + ActivePerl-5.8.8.820-MSWin32-x86-274739.msi一起安装,查看的结果和现在有些不同:在openssl目录下将看到bin、include、lib 3个文件夹。Bin目录下包括openssl.exe(openssl指令程序)、ssleay32.dll(SSL协议动态库)、libeay32.dll(密码算法库)。Lib目录下包括两个lib文件,即ssleay32.lib和libeay32.lib,分别是ssleay32.dll、libeay32.dll动态库文件对应的lib文件。Include目录下包括了OpenSSL开发涉及到的头文件。)
至此Openssl的安装就完成了,相关环境变量的设置以后进行程序开发的时候在谈,这样安装算是完成了,但是我仍然有个疑问:两次安装的成功够的查看安装结果为什么不一样呢?是否是由于版本更新的原因呢?希望后面自己能找出答案,如果哪位高手指点下不甚感激!
[注] 运行命令do_nasm
再运行 nmake -f ms\ntdll.mak
1. 下载最新版本的Perl,安装后重启系统。
http://downloads.activestate.com/ActivePerl/Windows/5.8/ActivePerl-5.8.8.822-MSWin32-x86-280952.zip
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
如不成功会有明显提示。
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
如果编译成功,最后的输出都在out32dll目录下:包括可执行文件、两个dll(ssleay32.lib, libeay32.lib)和两个lib文件(ssleay32.dll, libeay32.dll)。
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目录下,确保动态链接库在正确的路径。
mark:
nmake -f ms/ntdll.mak
编程初步:
#include <openssl/err.h>
#include <openssl/bio.h>
#pragma comment(lib, "libeay32.lib")
#pragma comment(lib, "ssleay32.lib")