openssl1.1.0编译-(win10-64位-VS2013,UBUNTU16.04-64)

1. 简介

1.1 官网下载

    https://www.openssl.org/source/

1.2 Linux 编译openssl-1.1.0h

      查看原有系统是否已安装Openssl:
      openssl version -a

1.2.1 安装到linux系统

  1. ./config shared
  2. make && make install
  3. ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
  4. ln -s /usr/local/ssl/include/openssl /usr/include/openssl
  5. echo “/usr/local/ssl/lib” >> /etc/ld.so.conf
  6. ldconfig -v
  7. openssl version -a

1.2.2 安装到指定目录(动态库和静态库同时生成)

  1. /config shared –prefix=/study/openssl-1.0.2h/linux64-release \
    –openssldir=/study/openssl-1.0.2h/linux64-release/ssl
  2. make depend
  3. make
  4. make test
  5. make install
  6. openssl version

1.3 Windows下编译openssl-1.1.0h

以下测试环境:VS2013编译openssl-1.1.0h(1.1.0版本的不适用以下编译步骤)

1.3.1 安装ActivePerl(脚本解释器) 使用最新版本5.24.3

https://www.activestate.com/activeperl/downloads

perl -v可查看你所安装的版本。在你编译perl程序时会用到它

1.3.2 安装VS2013

1.3.3 安装NASM(1.1.0版本用到,1.1.1版本用不到)

NASM全称The Netwide Assembler,是一款基于80x86和x86-64平台的汇编语言编译程序,其设计初衷是为了实现编译器程序跨平台和模块化的特性。NASM支持大量的文件格式,包括Linux,*BSD,a.out,ELF,COFF,Mach−O,Microsoft 16−bit OBJ,Win32以及Win64,同时也支持简单的二进制文件生成。它的语法被设计的简单易懂,相较Intel的语法更为简单,支持目前已知的所有x86架构之上的扩展语法,同时也拥有对宏命令的良好支持

https://www.nasm.us/pub/nasm/releasebuilds/2.14rc7/
然后安装,
找到安装路径C:\Users\TOP-CHEN\AppData\Local\bin\NASM
设置环境变量添加到Path中
设置好后,重新打开dos

1.3.4 安装dmake

1.3.5 设置环境变量(系统变量)Path

Perl的环境变量(系统环境变量)在软件安装的时候自动设置了
C:\Users\TOP-CHEN\AppData\Local\bin\NASM
D:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin

1.3.6 下载OpenSSL

地址:http://www.openssl.org/source/
注意:1.1.0的版本编译与1.1.1版本的编译有区别,并且生成的库的名字也有区别!
下载后,将其解压缩至自己的目录下,建议在C盘不含中文名和空格的目录下,这样做便于后续操作。例如我C:\openssl

1.3.7 初始化编译环境

使用Visual Studio Tool中的“VS2013 x64 本机工具命令提示”来打开控制台;也可以打开一个控制台,然后进到“安装路径\Microsoft Visual Studio 12.0\VC\bin\amd64\“中运行vcvars64.bat;
执行命令vcvars64.bat 设置
.解压下载下来的openssl的压缩包,进入解压文件夹,输入命令:

win64配置参数需要根据自身系统确定:perl Configure { VC-WIN64A | VC-WIN64I }。

cd /d D:\openssl-1.1.0h
perl Configure VC-WIN64A shared no-asm –prefix=”D:/openssl-1.1.0h/win64-release” –openssldir=”D:/openssl-1.1.0h/win64-release/ssl”


在正式编译之前
(1). 找到 c:\openssl-1.1.0\configdata.pm和c:\openssl-1.1.0\makefile两个文件, 用记事本打开, 搜索 “/MD” 字符串, 替换成 “/MT”, 这将导致静态链接 C 运行, 避免了在目标机器上安装 VC 再发行包等等操作。
注意:暂时没替换!


1.3.8 编译 nmake

1.3.8.1 生成release64版本

1.3.8.1.1 生成release版本静态库

cd /d D:\openssl-1.0.2h
perl Configure VC-WIN64A no-asm –prefix=”D:/openssl-1.0.2h/win64-releaseLib” –openssldir=”D:/openssl-1.0.2h/win64-releaseLib/ssl”
ms\do_nasm
ms\do_win64a
nmake -f ms\nt.mak
nmake -f ms\nt.mak test
nmake -f ms\nt.mak install

1.3.8.1.2 生成release版本动态库

cd /d D:\openssl-1.0.2h
perl Configure VC-WIN64A no-asm –prefix=”D:/openssl-1.0.2h/win64-releaseDll” –openssldir=”D:/openssl-1.0.2h/win64-releaseDll/ssl”
ms\do_nasm
ms\do_win64a
nmake -f ms\ntdll.mak
nmake -f ms\ntdll.mak test
nmake -f ms\ntdll.mak install

1.3.8.2 生成debug64版本

1.3.8.2.1 生成debu版本静态库

cd /d D:\openssl-1.0.2h
perl Configure debug-VC-WIN64A no-asm –prefix=”D:/openssl-1.0.2h/win64-debugLib” –openssldir=”D:/openssl-1.0.2h/win64-debugLib/ssl”
ms\do_nasm
ms\do_win64a
nmake -f ms\nt.mak
nmake -f ms\nt.mak test
nmake -f ms\nt.mak install

1.3.8.2.2 生成debug版本动态库

cd /d D:\openssl-1.0.2h
perl Configure debug-VC-WIN64A no-asm –prefix=”D:/openssl-1.0.2h/win64-debugDll” –openssldir=”D:/openssl-1.0.2h/win64-debugDll/ssl”
ms\do_nasm
ms\do_win64a
nmake -f ms\ntdll.mak
nmake -f ms\ntdll.mak test
nmake -f ms\ntdll.mak install

猜你喜欢

转载自blog.csdn.net/WUZHU2017/article/details/80911402
今日推荐