Windows编译OpenSSL

Posted clnchanpin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows编译OpenSSL相关的知识,希望对你有一定的参考价值。

安装说明參考openssl源代码目录下INSTALL.W32

step1

环境搭建

安装perl,Visual Studio 2008

下载Openssl最新版源代码.我下的版本号为OpenSSL-1.0.0g.

 

step2

启动Visual Studio 2008 Command Prompt

执行bin\vcvars32 设置 环境变量

 

注意:

如遇反馈"此处不应该有/Microsoft",參考错误1.

 

step3

VS命令行窗体cdopenssl源代码目录

运行下面命令

$perlconfigure VC-WIN32

结果反馈 Configured for VC-WIN32.

 

注意:

假设想要调试。生成debug版本号运行下面命令

$perlconfigure debug-VC-WIN32

 

step4

ms\do_ms.bat

 

ms目录下生成 nt.mak以及ntdll.mak.假设使用静态库,就编译nt.mak,假设使用动态库,就编译ntdll.mak

nt.mak为例

 

step5

编译

$nmake -f ms\nt.mak

 

注意:

清除编译

$nmake -f ms\nt.mak clean

測试库

$nmake -f ms\nt.mak test

 

如遇错误:

NMAKE : fatal errorU1077: ‘"C:\Program Files (x86)\Microsoft Visual Studio 9.0\

VC\bin\cl.EXE"‘: return code ‘0xc0000135‘

參考错误2

 

如遇错误类似于无法打开某个文件:

d:\openssl-1.0.1g\crypto\cryptlib.h(62): fatal error C1083: Cannot open include

 file: ‘stdlib.h‘: No such file or directory

參考错误3

 

step6

安装

$nmake -f ms\nt.mak install

安装到该磁盘分区 usr/local/ssl

 

使用openssl

include加入$(ssl_DIR)\include

library加入$(ssl_DIR)\lib

 

错误1

执行vcvars32.bat,提示此处不应该有/Microsoft,导致环境变量配置失败。

 

解决方式

环境变量路径去掉双引號

 

错误2

NMAKE : fatal errorU1077: ‘"C:\Program Files (x86)\Microsoft Visual Studio 9.0\

VC\bin\cl.EXE"‘: return code ‘0xc0000135‘

 

直接运行cl,弹出系统错误对话框。提示缺少mspdb80.dll

 

解决方式:加入mspdb80.dll所在路径。

 

错误3

d:\openssl-1.0.1g\crypto\cryptlib.h(62): fatal error C1083: Cannot open include

 file: ‘stdlib.h‘: No such file or directory

解决方式

执行vcvars32命令环境变量设置

 

or

 

$setINCLUDE=$(DIR);%INCLUDE%

 

or

CFLAG加入

/I$(DIR)

 

參考链接

The#include Directive

以上是关于Windows编译OpenSSL的主要内容,如果未能解决你的问题,请参考以下文章

error: failed to run custom build command for `openssl-sys v0.9.63`

如何在windows平台下编译比特币bi

如何在windows上编译Tesseract OCR

windows下的c编译器用啥比较好

如何在windows上编译Tesseract OCR

在windows环境下 编译pb (protobuf) 文件