安装说明參考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命令行窗体cd至openssl源代码目录

运行下面命令

$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的更多相关文章

  1. windows编译openssl(64位)一游

    编译openssl,一套标准流程: (环境:  win10 64位os, vs2019) 需要的工具:perl     nasm   openssl源码包 1  安装perl 2  下载nasm,将n ...

  2. [转] Windows下编译OpenSSL

    简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...

  3. Windows编译安装OpenSSL

    windows下使用vs2008中的nmake编译安装openssl的脚本build.bat: echo off & color 0A :: 项目名称 set PROJECT=openssl ...

  4. 在Windows下编译OpenSSL(VS2005和VC6)

    需要说明的是请一定安装openssl-0.9.8a .  openssl-1.0.0我没有编译成功. 如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)1.安装Activ ...

  5. Windows环境下使用VS2005编译OpenSSL

    如何Windows环境下,使用VS2005编译OpenSSL,虽然这个问题在Baidu.Google上一堆,但安装中还是遇到些问题,在这里 记录下来希望能帮助大家不要在走弯路.注:我是在WinXP S ...

  6. windows 如何编译 Openssl ?

    windows 如何编译 Openssl ? 编译环境 VS2015 Openssl 1.0.2 ActivePerl 5.24.3 x64 编译步骤 安装 ActivePerl 期间,勾选添加至环境 ...

  7. 利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl

    利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl 首先mingw的环境搭建,务必遵循下文: http://blog.csdn.net/ubuntu64fan/ar ...

  8. windows 平台使用 VS2017 编译openssl源码

    windows 平台使用 VS2017 编译openssl源码 1)依赖安装 安装 perl 脚本解释器 下载 http://libevent.net/download 安装 nasm 汇编器 C:\ ...

  9. windows & gcc & mingw & mysy 编译 openssl

    今天有一个项目需要使用到 https, 以前一直用的都是http请求, 用 socket() 实现 https 请求我还真是头一回遇到. 先网上搜索了一下相关资料,明白了 https 相比较 http ...

随机推荐

  1. Delphi 设计模式:《HeadFirst设计模式》Delphi7代码---工厂模式之简单工厂

    简单工厂:工厂依据传进的参数创建相应的产品. http://www.cnblogs.com/DelphiDesignPatterns/archive/2009/07/24/1530536.html { ...

  2. cuda8.0 百度云盘分享

    因为深度学习的需要,装了ubuntu16系统,同时也装了cuda,在下载cuda的时候发现教育网下载的速度不忍直视,故换了更快的网下载,结果发现10兆宽带下载速度依然很慢,不过总算还是下载了,故把千辛 ...

  3. Comet OJ CCPC-Wannafly Winter Camp Day1 (Div2, online mirror) F.爬爬爬山-最短路(Dijkstra)(两个板子)+思维(mdzz...) zhixincode

    爬爬爬山 已经提交 已经通过 9.83% Total Submission:417 Total Accepted:41 题目描述 爬山是wlswls最喜欢的活动之一. 在一个神奇的世界里,一共有nn座 ...

  4. win7家庭版如何获得管理员权限?

    1.首先,打开你的命令提示符,输入cmd.有一点非常重要,如图所示,我们必须“以管理员的方式打开”.只有以管理员身份打开,那么接下来要敲打的命令才会成功. 2. 打开命令提示符后,在输入框输入net ...

  5. Java集合之ArrayList与LinkList

    注:示例基于JDK1.8版本 参考资料:Java知音公众号 本文超长,也是搬运的干货,希望小伙伴耐心看完. Collection集合体系 List.Set.Map是集合体系的三个接口. 其中List和 ...

  6. Python开发基础-Day2-流程控制、数字和字符串处理

    流程控制 条件判断 if单分支:当一个“条件”成立时执行相应的操作. 语法结构: if 条件: command 流程图: 示例:如果3大于2,那么输出字符串"very good" ...

  7. 1. ECMAScript 6 简介--ES6

    1. ECMAScript 和 JavaScript 的关系 国际标准化组织ECMA 制定了语言 ECMAScript, 该标准针对 Javascript 语言制定, 不叫Javascript 原因有 ...

  8. 【构造】Ural Championship April 30, 2017 Problem K. King’s island

    题意:让你构造一个n个点的简单多边形,使得所有点是整点,并且所有边长是整数,并且没有边平行于坐标轴. 就利用勾股数,如下图这样构造即可,n为偶数时,只需矩形拼成,n为奇数时,封上虚线边即可. #inc ...

  9. mysq-binlog

    Auth: JinDate: 2014-04-23参考: http://dev.mysql.com/doc/refman/5.1/en/replication-options-binary-log.h ...

  10. vue-router 2.0 改变的内容

    2.x 版本的 vue-router 相比之前的0.7.x版本,有很多破坏性改变: 通用 API 的修改 The old router.go() is now router.push() . 新的 r ...