• 一、关于openssl
  • 二、下载openssl
  • 三、编译openssl
    • 编译环境准备
    • 执行编译
  • 四、查看编译好的openssl
    • openssl目录结构如下

一、关于openssl

OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。—— 引用百度百科openssl词条
openssl是开源的(也就是公开源码)

二、下载openssl

  • 因为,openssl开源,并且托管于GitHub上。openssl Github
  • 可以直接选择在官网下载:[openssl Dwonload]
    1. 我下载的是官网的1.0.2o版本,openssl-1.0.2o.tar.gz.0.2o.tar.gz

三、编译openssl

  1. 为什么我选择编译使用,openssl Win32
    其中最大的原因是兼容性

  2. 解压下载后的压缩包。openssl-1.0.2o文件夹下,有以下文件。这些文件是对应不同环境下的编译教程。

  3. 我们选择查看的是INSTALL.W32

编译环境准备

  1. 根据INSTALL.W32文件中写到的一下内容

    • you need Perl for Win32. Unless you will build on Cygwin, you will need
      ActiveState Perl, available from http://www.activestate.com/ActivePerl.

    • one of the following C compilers:

      • Visual C++
      • Borland C
      • GNU C (Cygwin or MinGW)
    • Netwide Assembler, a.k.a. NASM, available from http://nasm.sourceforge.net/
      is required if you intend to utilize assembler modules. Note that NASM
      is now the only supported assembler.

  2. 我们编译需要的东西,Perl一个C编译器(我电脑上安装了VS2017,自带Visual C++所以就直接使用)、NASM
    1. Perl我下载的32位,NASM也是32位 nasm win32
    2. 安装说明中提到:If you want to compile in the assembly language routines with Visual C++, then you will need already mentioned Netwide Assembler binary,nasmw.exe or nasm.exe, to be available on your %PATH%.也就是要把nasm.exe的安装路径添加到环境变量%PATH%中。这样才能在其他目录下的命令行中执行nasm命令。
    3. 命令行执行Perl -v显示如下信息就安装好Perl了。
    4. 命令行执行nasm -v显示如下信息就安装好nasm了

执行编译

  1. 打开VC-WIN32,实际上就是使用VS的开发人员工具命令行。
  2. 将当前目录切换到切换到下载的openssl目录下。

    3.顺序执行下列命令。

    1. perl Configure VC-WIN32 --prefix=c:\some\openssl\dir 后面的路径指定的是安装的路径。
    2. (我选择的第二个 no-asm)
      • 如果你想用NASM在安装后,你需要执行ms\do_nasm
      • 如果你不需要使用汇编语言文件则执行下面两条命令
        perl Configure VC-WIN32 no-asm --prefix=c:/some/openssl/dir
        ms\do_ms

    1. nmake -f ms\ntdll.mak 编译
    2. nmake -f ms\ntdll.mak test运行测试文件,检查编译是否有误。
      • 如果结果输出passed all tests代表编译正确执行
    3. nmake -f ms\ntdll.mak install安装openssl到指定目录。

四、查看编译好的openssl

编译好的openssl在C:\some\openssl下。

openssl目录结构如下

  • openssl

    • dir

      • bin 可执行文件,以及openssl库的动态链接文件
      • include 编程时要用的头文件
      • lib 静态链接文件
      • ssl ssl的配置文件

在win32下编译openssl相关推荐

  1. Windows下编译OpenSSL(使用VS2013或VS2008)

    转自https://www.cnblogs.com/findumars/p/4299976.html 简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和 ...

  2. 在Windows下编译OpenSSL(VS2005)【转】

    如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器) 1.安装ActivePerl//初始化的时候,需要用到perl解释器 2.使用VS2005下的Visual Studi ...

  3. 如何在Windows下编译OpenSSL?

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

  4. Windows下编译openssl库

    1.概述 OpenSSL是一个开放源代码的软件库包,它实现了 SSL(Secure SocketLayer)和 TLS(Transport Layer Security)协议,所以应用程序可以使用这个 ...

  5. 如何在Windows下编译OpenSSL

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

  6. Windows 下编译 OpenSSL

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

  7. windows下编译openssl

    1. 下载ActivePerl 链接地址:ActivePerl 一路Next完成安装. 在终端中执行命令perl -v,确认安装成功 2. 环境变量 将VS的路径写入环境变量PATH: D:\Prog ...

  8. linux调用qt生成静态库文件下载,Centos7下编译openssl静态库与QT引用

    1.下载openssl版本:https://www.openssl.org/source/old/ 下载地址 2.我们下载版本为:openssl-1.0.2k 3.拷贝到Linux服务器任意目录 4. ...

  9. windows下编译支持https的curl

    先编译好openssl,过程详见:<windows下编译openssl> 编译好zlib,过程详见<windows下编译zlib> 1. 下载curl 官网:https://c ...

最新文章

  1. 安装apache的时候80端口被PID为4的系统进程所占用
  2. CentOS安装setup
  3. mysql中sql批量插入_MySQL批量SQL插入性能优化
  4. c语言求n到m之间的素数和
  5. [MySQL] 为什么要给表加上主键
  6. abb软启动器pstx手册_关于 ABB工业机器人碰撞检测功能的介绍
  7. UVA - 10003 - Cutting Sticks
  8. GYM 101908F - Music Festival
  9. Sublime text 2下alignment插件无效的解决办法
  10. 「野性消费」也不怕!打造供应链数据平台,业务逻辑模板都在这了
  11. Spring Data Jpa的JpaRepository的getOne()方法查询数据实体时报错could not initialize proxy
  12. xgboost三种特征重要性选择方法
  13. Java家庭收支记账系统
  14. ARINC429总线基础
  15. linux的XDG(X Desktop Group)基本目录规范
  16. 圆圆的球像什么_圆圆的月亮像什么-圆圆的月亮比喻句
  17. 当全分区都格式化,无引导分区如何重装系统?如何干净的重装系统?如何干净安全的删除掉windows.old?
  18. WordPress常用模板函数 修改或自制WordPress主题必备
  19. iphone摄像头发抖_为什么我的iPhone 7 Plus有两个摄像头?
  20. JavaScript【图片轮播】

热门文章

  1. HTML+CSS 背景图片大小设置问题(background-size)
  2. 微信文件没网络怎么打印?微信中的文件如何快速打印
  3. Vue + Element UI 实现权限管理系统 前端篇(九):接口格式定义
  4. 史玉柱:我是一个著名的失败者
  5. 苹果当前系统时间与服务器不一致,MacOS与Windows双系统时间不一致补丁
  6. Python学习笔记之九——错误与异常
  7. 用友U8销售退货案例教程
  8. 国产化服务器挂载硬盘,使用国产免费的软件WinMount将VMDK(VMWare)挂载为虚拟磁盘...
  9. 【22/21届内推】腾讯2022届春招/实习生备战
  10. JPA注解-@SequenceGenerator