Openssl的版本使用openssl-0.9.8a,可以到http://www.openssl.org(openssl的官方网站)下载。
1、安装 ActivePerl
openssl需要使用perl(版本为ActivePerl-5.8.8.817-MSWin32-x86-257965)进行一些配置,windows下我找了 ActivePerl 用于对编译环境进行配置,下面是安装ActivePerl的过程,采用默认安装即可,Perl的文件默认安装在c:/Perl目录下:
2、配置win32下的编译环境
在openssl目录里面执行Perl Configure VC-WIN32 用于配置win32下的编译环境
执行ms/do_ms.bat文件继续配置;
3、配置VC环境变量
进入VC安装路径,执行 VCVARS32.BAT(vc6一般在 Microsoft Visual Studio/VC98/Bin目录),这一步是设置临时的环境变量;
注意:运行Vcvars32的时候,可能会出现错误:Out of environment space,这个错误的产生是因为MS-DOS环境变量没有分配足够的内存,可以通过如下方法解决:
a.点击开始, 点击运行;
b.输入sysedit后回车运行该程序;
c.然后会出现多个窗口,选择Config.sys窗口;
d.如果存在Shell= 的语句, 在其前面输入 REM ,即注释该语句;
e.如果该语句不存在,就直接输入SHELL=C:/COMMAND.COM /E:4096 /P ,注意,要保证该语句是从第一行第一个位置开始输入的;
f.保存、退出重新启动电脑就应该可以解决这个问题。
按上述方法解决这个问题之后,重新启动电脑后可以直接执行第4步。
4、执行最后的编译
在命令行界面上回到openssl目录,执行 nmake -f ms/ntdll.mak,等待几分钟后编译完成,命令行界面自动消失。编译结果保存在d:/openssl/out32dll/目录下面。
注意:最后一步编译时可能出现错误:“NMAKE : fatal error U1077: 'ml' : return code '0x1' Stop.”,产生这种错误的可能原因是vc6的bin目录下没有ml.exe这个文件。该文件包含在MASM程序中。我的解决办法是到网上下载了一个MASM程序,安装上之后把ml.exe拷贝到VC6的bin目录下即可解决。