2024年3月19日发(作者:)
OpenSSL简介及在Windows系统上的编译步骤
OpenSSL在Windows7 32bit + vs2010中win32的编译步
骤:
1. 从下载OpenSSL源代码 openssl-1.0.1g版本;
2. 从下载ActivePerl5.16.3 x86(ActivePerl为perl的一个脚
本解释器);
3. 将ActivePerl安装到D:ProgramFilesPerl64目录下,打
开命令提示符,将其定位到D:ProgramFilesPerl64eg 目录下,执
行perl ,若提示Hello fromActivePerl! 则说明Perl安
装成功,可以开始使用Perl的相关命令来进行OpenSSL的安装了;
4. 将openssl-1.0.1g解压缩到E:OpenSSLopenssl-1.0.1g
目录下;
5. 从下载nasm 2.07,将其安装到D:ProgramFilesNASM
中,并将D:ProgramFilesNASM添加到系统环境变量Path中;
6. 将命令提示符定位到E:OpenSSLopenssl-1.0.1g;
7. 输入perl Configure VC-WIN32 --
perfix=E:OpenSSLopenssl (将其安装到E:OpenSSLopenssl);
8. 输入msdo_nasm ;
9. 将命令提示符定位到C:Program Files (x86)Microsoft
Visual Studio 10.0VCbin , 然后输入 ,会显示
Settingenvironment for using Microsoft Visual Studio 2010 x86
tools. 如果没有这一步,会提示nmake不是内部或外部命令;
10. 再次将命令提示符定位到E:OpenSSLopenssl-1.0.1g;
11. 输入 nmake –f ;执行完后会在openssl-
1.0.1g目录下生成一个out32dll文件夹,里面包含了一些静态库、动
态库和.exe文件;
12. 输入 nmake -f test ;若最终显示
passed all tests说明生成的库正确;
13. 输入 nmake -f install ;则会在
E:OpenSSLopenssl目录下生成bin、include、lib、ssl四个文件夹;
14. 以上编译的是release库,若编译debug库,则将以上第7
步中的VC-WIN32改成debug-VC-WIN32即可;
15. 若编译静态库则用替换掉上面用到的
即可;
16. 若生成不带汇编支持的库,则需将以上第7、8步用
perl Configure VC-WIN32 no-asm --
prefix=E:OpenSSLopenssl 和 msdo_ms替换即可;
17. 在E:OpenSSLopenssl-1.0.1gtmp32dll文件夹下包含相
应的汇编文件。
测试编译成功方案:(禁用汇编)
OpenSSL在Windows7 32bit + vs2012中win32的编译步
骤:
1、解压OpenSSL到系统盘
比如C:OpenSSL。
2、配置WIN32环境
32位系统打开 VS2012 X86本机命令提示工具
7.1 打开所以程序
7.2 找到Microsoft Visual Studio 2012
7.3 打开VS2012 x86本机命令提示工具
openssl-1.0.1k>perl Configure VC-WIN32 no-asm //禁用汇
编
3、进入VC BIN目录,配置VC环境变量
进入VS安装路径VC/Bin目录下,运行:
设置环境变量。
4、返回OpenSSL目录,创建makefile文件
msdo_ms //不执行汇编语言编译
该命令不执行汇编语言编译,如报告文末错误,可以尝试
msdo_masm(使用汇编语言)、msdo_nasm、msdo_nt等,这
几个配置文件是针对不同的系统配置写的批处理。
至于这几个命令区别如下,其它的暂时没用到未深究,有经验之
士欢迎赐教。
- If you are using MASM then run:
> msdo_masm
- If you are using NASM then run:
> msdo_nasm
- If you don't want to use the assembly language files at all
then run:
> msdo_ms
5、在Openssl目录下,执行编译
nmake -f
最终编译动态库完成后,输出都在out32dll目录下:包括可执行
文件、两个dll 和两个lib文件: , , ,
。
如果需要使用openssl命令,还需要在系统环境变量path中增加
c:opensslout32dll路径,因为就在该目录下,声明后
可以直接在命令行中使用openssl命令。
另外还有几个命令可能会用到:
测试OpenSSL动态库:nmake -f test
测试OpenSSL静态库:nmake -f test
安装OpenSSL动态库:nmake -f install
安装OpenSSL静态库:nmake -f install
清除上次OpenSSL动态库的编译,以便重新编译:nmake -f
clean
清除上次OpenSSL静态库的编译,以便重新编译:nmake -f
clean


发布评论