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

posted @ 2017-08-03 20:16  clnchanpin  阅读(635)  评论(0编辑  收藏  举报