Windows下openssl的编译安装

转自:

Windows下openssl的编译安装

2013年12月11日 ⁄ 综合 ⁄ 共 3476字 ⁄ 字号 小 中 大 ⁄ 评论关闭
此次安装是在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:


1、安装VC++ 6.0。    
2、下载ActivePerl-5.8.0.806-MSWin32-x86并安装:
http://www.sogoz.info/down.asp?id=3683&no=1
3、下载 openssl0.98并解压。
http://www.openssl.org/source/openssl-0.9.8.tar.gz
    
安装步骤:完全可以参照openssl目录下的install.win32
1、perl Configure VC-WIN32
如不成功会有明显提示
2、ms/do_ms
推荐使用这种方式
    另外两种方式如果使用也必须保证本机有编译器才能使用。
     :ms/do_masm (默认vc自带的编译器;也也以自己下载安装)    
     :ms/do_nasm (需要自己下载)
    
    
3、DOS窗口下转到【Microsoft Visual Studio】/VC98/bin目录下执行vcvars32.bat以配置环境变量。
4、跳到openssl目录下,执行:
nmake -f ms/ntdll.mak


如果编译成功,最后的输出都在out32dll目录下:包括可执行文件、两个dll和两个lib文件: libeay32.dll, libeay32.lib, ssleay32.dll,
ssleay32.lib


编程初步:


1、 打开VC-Tools-Options-Directores,在Include
files中增加【openssl-0.9.8】/inc32目录;在Libray files中增加【openssl-0.9.8】/out32dll
2、 在源程序中包含以下三个头文件并加入LIB:
#include <openssl/ssl.h>
#include <openssl/err.h>
#include <openssl/bio.h>
#pragma comment(lib, "libeay32.lib")
#pragma comment(lib, "ssleay32.lib")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值