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

首先mingw的环境搭建,务必遵循下文:

http://blog.csdn.net/ubuntu64fan/article/details/8918808

然后:

1 编译32位openssl

1)打开:MSYS-x64 Shell(msys\1.0\bin\sh.exe)。以下操作都是在mingw64 shell中执行。

2)查看当前编译环境的位版本(32或64):

  $ cat /etc/profile

在最下面看到:

......
if [ -f /local32/etc/profile.local ]; then
  source /local32/etc/profile.local
fi

可知当前shell使用的是32位编译环境。

3)下载openssl

  $ cd /local32/src
  $ wget http://www.openssl.org/source/openssl-1.0.2e.tar.gz

我机器上的真实目录是:C:\DEVPACK\MinGW\local32\src

解压:

  $ tar zxfh openssl-1.0.2e.tar.gz

会出现一堆警告,忽略之

使用tar zxfh openssl-1.0.2e.tar.gz 解包。原因是:

+ Since the release tarballs contain symlinks which MSYS cant deal with
+ you must use tar with the -h option to dereference the symlinks:
+ tar zxfh openssl-1.0.2e.tar.gz

4)编译openssl静态库和动态库

  $ cd /local32/src/openssl-1.0.2e
  $ perl Configure mingw shared --prefix=/usr/local/win32
  $ make -j 4
  $ make install

编译好的结果:头文件,库文件等安装在目录 /usr/local/win32/ssl 下面,对应真实目录:

C:\DEVPACK\MinGW\msys\1.0\local\win32\ssl

2 编译64位openssl

1)打开:MSYS-x64 Shell(msys\1.0\bin\sh.exe)。以下操作都是在mingw64 shell中执行。

2)下载解压: openssl-1.0.2e.tar.gz

  $ cd /local64/src
  $ wget http://www.openssl.org/source/openssl-1.0.2e.tar.gz
  $ tar zxfh openssl-1.0.2e.tar.gz

3)改变编译环境位数为x64 (仅对当前窗口有效):
  $ source /local64/etc/profile.local

4)编译openssl静态库和动态库

  $ cd openssl-1.0.2e
  $ perl Configure mingw64 shared --prefix=/usr/local/win64
  $ make -j 4
  $ make install

编译好的结果:头文件,库文件等安装在目录 /usr/local/win64/ssl 下面,对应真实目录:
C:\DEVPACK\MinGW\msys\1.0\local\win64\ssl

利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl的更多相关文章

  1. 利用openssl管理证书及SSL编程第1部分: openssl证书管理

    利用openssl管理证书及SSL编程第1部分 参考:1) 利用openssl创建一个简单的CAhttp://www.cppblog.com/flyonok/archive/2010/10/30/13 ...

  2. 利用openssl管理证书及SSL编程第3部分:将MinGW编译的openssl dll导出def和lib供MSVC使用

    将MinGW编译的openssl dll导出def和lib供MSVC使用 前面我们用mingw把openssl 编译成了动态库,得到下面2个dll文件: libeay32.dll ssleay32.d ...

  3. [转] Windows下编译OpenSSL

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

  4. Windows下编译OpenSSL(使用VS2013)

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

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

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

  6. windows 如何编译 Openssl ?

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

  7. 在Windows上编译最新的CURL,含有zlib,openssl

    最近,从网上下载了一个curl库,使用时各种报错,都无法启动,于是干脆就直接自己编译了. 1. 准备工作 a. 下载zlib zlib可以使得HTTP请求支持gzip压缩,其地址如下: 官网:http ...

  8. 怎样在WINDOWS下面编译OpenSSL

    编译OPENSSL的步骤: 第一步:下载ActivePerl(http://www.activestate.com/, ),安装ActivePerl,默认安装路径在C:\Perl64.打开命令提示符, ...

  9. windows vs2015 编译openssl 1.1.0c

    1,到openssl官网下载源码. 2,安装activePerl,我放在网盘:https://pan.baidu.com/s/1ZHe24yRcPtIuSiEa-3oqxw 3.安装完毕后,使用 VS ...

随机推荐

  1. 给div添加2个class

    <div class='center nocontent'>  类名用空格分开 在优先级一样的情况下就近原则  优先级# 100 .10 <span>这种标签是1 所以的相加 ...

  2. JVM常见问题(二)

    6. GC收集器有哪些?它们的特点是? 常见的GC收集器如下图所示,连线代表可搭配使用: 1.Serial收集器(串行收集器) 用于新生代的单线程收集器,收集时需要暂停所有工作线程(Stop the ...

  3. 四柱加强版汉诺塔HanoiTower----是甜蜜还是烦恼

    我想很多人第一次学习递归的时候,老师或者书本上可能会举汉诺塔的例子. 但是今天,我们讨论的重点不是简单的汉诺塔算法,而是三柱汉诺塔的延伸.先来看看经典的三柱汉诺塔. 一.三柱汉诺塔(Hanoi_Thr ...

  4. JavaScript数据结构和算法----栈

    前言 栈是一种遵循后进先出(LIFO)原则的有序集合,新添加的或待删除的元素都保存在栈的末尾,称作栈顶,另外一端就叫栈底.在栈里,新元素都靠近栈顶,旧元素都接近栈底.可以想象桌上的一叠书,或者厨房里的 ...

  5. struts2中的使用BaseAction获取Session

    package com.owen.ma; import java.util.Map; import org.apache.struts2.interceptor.RequestAware; impor ...

  6. Ubuntu搭建owncloud10

    前言: 在此我先吐槽一下.用Centos系统简直是为难我自己,是看到那个系统 感到无比的绝望. 正文: 自己在虚拟机中搭建Ubuntu系统.这里就不说了 安装好之后自己换源.建议的源: 清华源: # ...

  7. Kafka生产者-向Kafka中写入数据

    (1)生产者概览 (1)不同的应用场景对消息有不同的需求,即是否允许消息丢失.重复.延迟以及吞吐量的要求.不同场景对Kafka生产者的API使用和配置会有直接的影响. 例子1:信用卡事务处理系统,不允 ...

  8. R语言do.call 函数用法详解

    虽然R语言有类型很丰富的数据结构,但是很多时候数据结构比较复杂,那么基本就会用到list这种结构的数据类型.但是list对象很难以文本的形式导出,因此需要一个函数能快速将复杂的list结构扁平化成da ...

  9. Nodejs 模块查找机制还不错(从当前目录开始逐级向上查找node_modules)

    比如 m.js是能够调用a.js的, 这样子目录就可以避免重复安装node_modules. 够用了.

  10. Android源码解析——Toast

    简介 Toast是一种向用户快速展示少量信息的视图.当它显示时,它会浮在整个应用层的上面,并且不会获取到焦点.它的设计思想是能够向用户展示些信息,但又能尽量不显得唐突.本篇我们来研读一下Toast的源 ...