这里提供的Makefile.bat,使用VS2017命令行编译项目
如需使用其它VS,请修改如下配置:
set VCPATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build
源代码目录自动定位,如需指定其它源代码目录,请修改如下代码的VPATH:
for /d %%P in ("%MyPath%\\%ProjectName%*") do set VPATH=%%~fP
在已有VC命令行环境下运行脚本,只编译当前平台相符的库
无VC命令行环境时,编译x64 & x86
- 编译前需要安装ActivePerl
- 编译前需要安装dmake
set ACTIVEPERL_PPM_HOME=\Perl\tmp
ppm install dmake
- 打开VC命令行(x64/x86)
- 进入openssl目录
- 配置(x64/x86):
- x64配置:perl Configure VC-WIN64A shared no-asm no-shared
- x86配置:perl Configure VC-WIN32 shared no-asm no-shared
- 开始编译:
- 全部编译:nmake
- 只编译LIB:nmake build_libs
- 如编译成功,测试:nmake test
- 结果在当前目录。libcrypto.lib & libssl.lib
- 清除:nmake clean
- 注意到nmake clean会删除include\opensslconf.h,故应在clean之前提取
- 打开VC命令行(x64/x86)
- 进入openssl目录
- 配置(x64/x86):
- x64配置:perl Configure VC-WIN64A shared no-asm no-shared
- x86配置:perl Configure VC-WIN32 shared no-asm no-shared
- 继续配置:
- x64配置:ms\do_win64a
- x86配置:ms\do_ms
- 开始编译:
- 编译LIB:nmake -f ms\nt.mak
- 编译DLL:nmake -f ms\ntdll.mak
- 如编译成功,测试:nmake -f ms\nt.mak test
- 结果目录:openssl-1.0.x/inc32 & openssl-1.0.x/out32
- 清除:nmake -f ms\nt.mak clean