近期工作中使用到了openssl的win64位资料,所以进行前期调研,汇总结果例如以下:
【注意】openssl代码所在文件夹中不要带中文,否则“nmake -f ms
tdll.mak ”可能会提示“宏中非法字符”等错误
一、Openssl WIN7 x64 编译
环境:WIN7 64位。编译器:VS2010
须要下载 Perl(如http://downloads.activestate.com/ActivePerl/releases/5.16.3.1603/ActivePerl-5.16.3.1603-MSWin32-x64-296746.msi)和
Microsoft Platform SDK(VS2005或VS2010)
0.进入cmd,运行 C:Program Files (x86)Microsoft Visual Studio 10.0VCinamd64vcvars64.bat
#拷贝 C:Program Files (x86)Microsoft Visual Studio 10.0VCinamd64ml64.exe 到ms文件夹下(假设ml64.exe已经有了,就不须要拷贝)
1.启动VS2010的控制台,可以配置相关的环境变量——(可省略)
2.进入opensll文件夹,如cd C:openssl-0.9.8k
3.x64的编译命令:
> perl Configure VC-WIN64A
> msdo_win64a 创建Makefile文件
> nmake -f ms
tdll.mak 编译动态库(等待时间较长)
> nmake -f ms
tdll.mak test 检查上一步编译是否成功
> nmake -f ms
tdll.mak install 安装编译后的openssl到指定文件夹
可选指令
> nmake -f ms
tdll.mak clean 清除上次OpenSSL动态库的编译(依据须要,选择是否编译静态库)
> nmake -f ms
t.mak 编译静态库(依据须要,选择是否编译静态库)
> nmake -f ms
t.mak clean 清除上次OpenSSL静态库的编译(依据须要,选择是否编译静态库)
二、在windows下编译openssl(32位)
环境:WIN7 64位,编译器:VS2010
须要下载 Perl(如http://downloads.activestate.com/ActivePerl/releases/5.16.3.1603/ActivePerl-5.16.3.1603-MSWin32-x64-296746.msi)和
Microsoft Platform SDK(VS2005或VS2010)
0.进入cmd,运行 C:Program Files (x86)Microsoft Visual Studio 10.0VCinvcvars32.bat
#拷贝 C:Program Files (x86)Microsoft Visual Studio 10.0VCinml.exe 到ms文件夹下(假设ml.exe已经有了,就不须要拷贝)
1.启动VS2010的控制台,可以配置相关的环境变量——(可省略)
2.进入opensll文件夹。如cd C:openssl-0.9.8k
3.x86的编译命令:
> perl Configure VC-WIN32
创建Makefile文件
如用masm,执行msdo_masm命令
如用nasm, 执行msdo_nasm
假设什么都没用,执行msdo_ms
> nmake -f ms
tdll.mak 编译动态库(等待时间较长)
> nmake -f ms
tdll.mak test 检查上一步编译是否成功
> nmake -f ms
tdll.mak install 安装编译后的openssl到指定文件夹
可选指令
> nmake -f ms
tdll.mak clean 清除上次OpenSSL动态库的编译(依据须要,选择是否编译静态库)
> nmake -f ms
t.mak 编译静态库(依据须要,选择是否编译静态库)
> nmake -f ms
t.mak clean 清除上次OpenSSL静态库的编译(依据须要。选择是否编译静态库)