openssl windows编译 32位&64位
2021-01-05 09:27
64位编译
1、编译环境:
openssl-1.0.0a必须用vs2008编译(Open Visual Studio 2008 x64 Cross Tools Command Prompt),VC6+nasm32是无法编译了,因为openssl-1.0.0a要求cl.exe的版本比较高,vc6无法编译,所以用vs2008编译。
2、64位编译:
运行configure:
perl Configure VC-WIN64A 或 perl Configure debug-VC-WIN64A
创建Makefile文件:注意路径中的斜线。
ms\do_win64a
编译动态库:
nmake -f ms\ntdll.mak
编译静态库:
nmake -f ms\nt.mak
请使用vs2008自带的64位命令行编译环境,即使用“vs2008安装目录/VC/bin/amd64/”下的nmake.exe。如果在编译过程中报有关cl或ml的错误,则在命令行下运行与nmake.exe同级目录的vcvarsamd64.bat设置适当的环境变量以启用64位命令行编译。
32位编译
1、编译环境:
openssl-1.0.0a必须用vs2008编译,VC6+nasm32是无法编译了,因为openssl-1.0.0a要求cl.exe的版本比较高,vc6无法编译,所以用vs2008编译。
2、32位编译:
运行configure:
perl Configure VC-WIN32 或 perl Configure debug-VC-WIN32
创建Makefile文件:注意路径中的斜线。
ms\do_ms
编译动态库:
nmake -f ms\ntdll.mak
编译静态库:
nmake -f ms\nt.mak
请使用vs2008自带的32位命令行编译环境,即使用“vs2008安装目录/VC/bin/”下的nmake.exe。如果在编译过程中报有关cl或ml的错误,则在命令行下运行与nmake.exe同级目录的vcvars32.bat设置适当的环境变量以启用32位命令行编译。
清除上次OpenSSL动态库的编译,以便重新编 译:nmake -f ms\ntdll.mak clean
清除上次OpenSSL静态库的编译,以便重新编译:nmake -f ms\nt.mak clean
--------------------------------------------------------------------------------------------------------
vs2008:
perl Configure VC-WIN32 no-asm --prefix=e:/lib/openssl-1.1.1
nmake
nmake install
nmake /f Makefile.vc mode=static VC=9 WITH_SSL=static WITH_ZLIB=static ENABLE_IDN=no ENABLE_SSPI=no SSL_PATH=E:\lib\openssl-1.1.1 ZLIB_PATH=E:\lib\zlib-1.2.11
linux:
./configure --disable-shared --disable-ldap --disable-ldaps --with-ssl=/home/xx/code/lib/openssl-1.1.0f --with-zlib=/home/xx/code/lib/zlib-1.2.11
文章标题:openssl windows编译 32位&64位
文章链接:http://soscw.com/index.php/essay/40231.html