我正在使用Visual Studio 2015编译OpenSSL。 我安装了: 1. Windows 10上的Visual Studio 2015。
的ActivePerl-5.24.0.2400-MSWin32-x64-300558。
NASM-08年11月2日-win32的。
OpenSSL源代码:git clone git://git.openssl.org/openssl.git
我做的是:
使用以下行创建批处理文件。
@call“C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ VC \ vcvarsall.bat”x86_amd64 @set path =%path%; C:\ Users \ gchen \ AppData \ Local \ nasm
perl配置VC-WIN64A -prefix = C:\ test \ openssl
现在我应该做ms \ do_win64a。但我找不到这个批处理文件。 在目录'ms'中,有文件
2016/08/22 17:39。
2016/08/22 17:39 ..
2016/08/21 14:23 3,646 applink.c
2016/08/21 14:23 1,247 cmp.pl
2016/08/21 14:23 2,815 segrenam.pl
2016/08/21 14:23 4,541 tlhelp32.h
2016/08/21 14:23 1,137 uplink-common.pl
2016/08/21 14:23 1,472 uplink-ia64.pl
2016/08/21 14:23 1,111 uplink-x86.pl
2016/08/21 14:23 1,594 uplink-x86_64.pl
2016/08/21 14:23 4,225 uplink.c
2016/08/21 14:23 2,268 uplink.h
但没有ms-win64a.bat。 我做错了什么?
答案 0 :(得分:32)
构建过程随着新的1.1.0版本而发生了变化。可能你已经想出了自己,但无论如何:
从1.1.0开始,不再有QComboBox
个文件。
而是执行以下步骤:
Windows上的x32编译:
ms\do_*.bat
Windows上的x64A编译:
perl Configure VC-WIN32
nmake
nmake test
像以前一样配置编译器环境,并指向Perl(如果使用的话还有NASM)的路径。
来源:1.1.0版本中包含的perl Configure VC-WIN64A
nmake
nmake test
文件。
答案 1 :(得分:2)
自新的1.1.0发布以来,源代码中没有ms\
文件夹。如果你想知道你现在应该编辑什么来构建一个静态版本(这导致一个没有任何DLL的单个.exe文件)。这是完整的指南。
您需要满足以下先决条件:
您需要在系统范围内安装所有这些工具,并将它们添加到%PATH%
环境变量中。
获得我们需要的一切后,只需按照以下简单步骤操作:
创建C:\build
目录并在命令提示符中发出以下命令:
cd c:\build
下载最新的zlib&使用以下命令将OpenSSL源代码发送到build
目录:
git clone https://github.com/madler/zlib
git clone https://github.com/openssl/openssl
首先,我们必须构建静态zlib
。首先,我们需要编辑一些配置文件:
zlib
源文件夹:cd C:\build\zlib
编辑win32\Makefile.msc
文件:
CFLAGS
-MD
替换为-GL -MT -Zc:wchar_t-
LDFLAGS
-debug
替换为-opt:icf -dynamicbase -nxcompat -ltcg /nodefaultlib:msvcrt
使用以下命令构建zlib
(应该不到一分钟):
nmake -f win32/Makefile.msc AS=ml64 LOC="-DASMV -DASMINF -DNDEBUG -I." OBJA="inffasx64.obj gvmat64.obj inffas8664.obj"
将生成的文件复制到OpenSSL
目录:
xcopy zlib.h C:\build\openssl\
xcopy zconf.h C:\build\openssl\
xcopy zlib.lib C:\build\openssl\
xcopy zlib.pdb C:\build\openssl\
导航至OpenSSL
来源:cd C:\build\openssl\
并将其配置为使用静态zlib&从openssl.cnf
目录中读取配置文件(C:\Windows\
)。
perl Configure VC-WIN64A no-shared zlib no-zlib-dynamic threads --prefix=C:\Windows\
现在对C:\build\openssl\makefile
进行以下编辑:
CFLAG
/Zc:wchar_t- /GL /Zi
LDFLAGS
/debug
替换为/incremental:no /opt:icf /dynamicbase /nxcompat /ltcg /nodefaultlib:msvcrt
EX_LIBS
ZLIB1
替换为zlib.lib
通过发出OpenSSL
命令构建nmake
(大约需要15分钟)。
生成的~3MB openssl.exe
文件将位于C:\build\openssl\apps\
目录。它是完全可移植的,因为包含了所有DLL。如果您需要使用自定义配置文件,请将C:\build\openssl\apps\openssl.cnf
复制到您的C:\Windows\
目录&根据自己的喜好编辑它。
答案 2 :(得分:0)
以下命令需要在管理员用户下执行
从1.1.0版本开始,不再需要执行ms \ do _ *。bat文件。