如何在 Windows 下编译 OpenSSL

 我来答
百度网友fd7643b
2017-04-19 · 知道合伙人互联网行家
百度网友fd7643b
知道合伙人互联网行家
采纳数:505 获赞数:1743
一直从事网络推广专业,SEO,sem等等。

向TA提问 私信TA
展开全部
1、安装ActivePerl//初始化的时候,需要用到perl解释器
2、使用VS2010下的Visual Studio 2010 Command Prompt进入控制台模式(这个模式会自动设置各种环境变量)
3、解压缩openssl的包,进入openssl的目录
4、perl configure VC-WIN32
尽量在这个目录下执行该命令,否则找不到Configure文件,或者指定完整的Configure文件路径。
5、ms\do_ms.bat
在解压目录下执行ms\do_ms.bat命令
6、nmake -f ms\ntdll.mak
7、nmake -f ms\nt.mak

编译后
在openssl解压目录下执行,完成编译后。输出的文件在out32dll (6), out32 (7)里面,包括应用程序的可执行文件、lib文件和dll文件

注意:在运行第五步时,cl编译器会抱怨说.\crypto\des\enc_read.c文件的read是The POSIX name for this item is deprecated(不被推荐的),建议使用_read。呵呵,我可不想将OpenSSL中的所有的read函数修改为_read。再看cl的错误代码error C2220,于是上MSDN上查找:
warning treated as error - no object file generated
/WX tells the compiler to treat all warnings as errors. Since an error occurred, no object or executable file was generated.
是由于设置了/WX选项,将所有的警告都作为错误对待,所以。。。

于是打开OpenSSL目录下的MS目录下的ntdll.mak文件,将CFLAG的/WX选项去掉,存盘。。。
继续执行nmake -f ms\ntdll.mak
匿名用户
2017-04-19
展开全部
一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人员而言,在http://slproweb.com/products/Win32OpenSSL.html 上下载已经编译好的OpenSSL库是省力省事的好办法.对于高级的开发用户,他们可能需要适当的修改或者裁剪OpenSSL,那么编译它就成为了一个关键问题.本篇博客就是主要讲述如何早Windows上编译OpenSSL库

笔者按照一定的步骤成功了编译了OpenSSL库,步骤如下

在微软网站下载并安装VS Studio,笔者写博客之时的最新版本是2013,连接如下

http://www.activestate.com/activeperl/downloads 下载并安装

http://www.nasm.us/ 下载并安装Nasm汇编器

http://www.openssl.org/下载并安装OpenSSL的最新Release包.笔者写博客之时,最新的OpenSSL包是

这里需要强调的是,读者未必需要完全按照笔者的步骤编译OpenSSL库,这里的部分次序是可以互换的

在完成所有上述5步后,我们就可以解压缩OpenSSL包,在对它进行修改便可以编译了.在解压缩后,所有的源代码放在openssl- 1.0.1e目录下,在此目录下,有两个文件INSTALL.W32, INSTALL.W64需要被关注.打开其中的任何一个文件,你会看到如何编译OpenSSL的各个步骤.这里,笔者将会再啰嗦一下

打开VS Studio命令行工具,如图1所示.若编译64位OpenSSL库,请打开Visual Studio x64 Win64 Command Prompt,反之亦然
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式