利用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. $.messager.confirm 用法

    <script type="text/javascript">     $(function () {         $.messager.defaults = { ...

  2. 4月18开始看《C++Primer Plus》

    好久没有写博客了,之前也说过水平有限,也写不出什么技术博客,只能写些感悟. 过年之后,陆续做了2.3个项目,刚开始可能不太熟悉流程,怎么和页面传数据?最近一个项目1/2天就写完代码了,真的很简单,主要 ...

  3. angular2+ionic2架构介绍

    不要用angular的语法去写angular2,有人说二者就像Java和JavaScript的区别.   1. 项目所用:angular2+ionic2+typescript 2. 项目结构 3. S ...

  4. ACM 数塔

    在讲述DP算法的时候,一个经典的例子就是数塔问题,它是这样描述的: 有如下所示的数塔,要求从顶层走到底层,若每一步只能走到相邻的结点,则经过的结点的数字之和最大是多少?  已经告诉你了,这是个DP的题 ...

  5. Node.js ZLIB

    Zlib 稳定性: 3 - 文档 可以通过以下方式访问这个模块: var zlib = require('zlib'); 这个模块提供了对 Gzip/Gunzip, Deflate/Inflate, ...

  6. 深入解读XML解析

    一.XML是什么?有什么用? XML是指.作为配置文件存在 二.XML的基本语法 1.文档声明:很重要 在编写XML文档时,需要先使用文档声明来声明XML文档.且必须出现在文档的第一行. 作用:告知解 ...

  7. 在Ubuntu12.04上安装图形化配置与window共享的samba服务器

    1.安装samba图形化配置界面 sudo apt-get install system-config-samba 2.启动图形化配置界面 3.添加用户,最好是要用adduser命令去添加 具体配置可 ...

  8. Appium移动自动化测试(五)--app控件获取之uiautomatorviewer

    初探 在Android的SDk提供了以下的工具来支持我们进行UI自动化测试: uiautomatorviewer:用来扫描和分析Android应用程序的UI控件的工具. uiautomator:一个包 ...

  9. Python 3.3.3 使用requests模拟登录网站

    在模拟登录上,requests确实比python标准库中的相关模块更加简洁. 假设你需要去爬一组页面(targetUrls),而这些页面要登录才能进行访问.那么requests能够提供一种相当简单的语 ...

  10. Dynamics CRM 删除字段时检测到有组件类型为查看的依赖组件而无法删除问题

    今天在删除一个字段的时候报如下截图错误,点开详细信息会看到是一个快速查找视图,但却在视图列中没有找到我要删的那个字段,然后回过头来又看到组件类型是查看,这是啥类型?有点摸不着头脑了. 最后想到是不是查 ...