Windows XP SP3下编译安装openssl-1.1.0b
软件需要:
openssl-1.1.0b
visual studio 2010(cn_visual_studio_2010_ultimate_x86_dvd_532347.iso)
perl:ActivePerl-5.22.1.2201
nasm-2.12.03rc1-win32
环境准备:
1.从官网下载ActivePerl-5.22.1.2201并一路确认安装到硬盘中
2.打开命令提示符,第一次输入cpan会默认下载mingw,等待数分钟以后他会默认解压安装。
3.待mingw自动安装以后将会出现 cpan>提示符,在里面分别输入
install Test::More install Text::Template
4.下载nasm-2.12.03rc1-win32并解压到d:\develop\2.12.03rc1\
在系统环境变量PATH添加D:\develop\nasm-2.12.03rc1;
以上准备工作做好了
编译:
编译过程中用过VC6/VC7均编译失败,后来网上找到原因:
openssl-1.0.0a必须用vs2008编译,VC6+nasm32是无法编译了,因为openssl-1.0.0a要求cl.exe的版本比较高,vc6无法编译,所以用vs2008编译。
本文选用了2010
vc7报错:
async_win.obj : error LNK2019: unresolved external symbol _ConvertFiberToThread referenced in function _async_local_cleanup
async_win.obj : error LNK2019: unresolved external symbol _ConvertThreadToFiber referenced in function _async_fibre_init_dispatcher
async.obj : error LNK2019: unresolved external symbol _DeleteFiber referenced in function _async_job_free
async.obj : error LNK2019: unresolved external symbol _SwitchToFiber referenced in function _async_start_func
async.obj : error LNK2019: unresolved external symbol _CreateFiber referenced in function _ASYNC_init_thread
b_print.obj : error LNK2019: unresolved external symbol __ftol2 referenced in function _roundv
b_print.obj : error LNK2019: unresolved external symbol __aulldvrm referenced in function _fmtint
bss_dgram.obj : error LNK2019: unresolved external symbol __aulldvrm referenced in function _dgram_ctrl
ct_prn.obj : error LNK2001: unresolved external symbol __aulldvrm
threads_win.obj : error LNK2019: unresolved external symbol _InitializeCriticalS
ectionAndSpinCount referenced in function _CRYPTO_THREAD_lock_new
libcrypto-1_1.dll : fatal error LNK1120: 8 unresolved externals
NMAKE : fatal error U1077: 'link' : return code '0x1'
Stop.
vc6报错:
crypto\ec\curve25519.c(897) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(898) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3298) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3299) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3300) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3301) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3302) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3303) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3304) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3305) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3306) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
crypto\ec\curve25519.c(3307) : warning C4244: '=' : conversion from '__int64 ' to 'int ', possible loss of data
Stop.
以下是完整的编译安装步骤:
perl Configure VC-WIN32 zlib,zlib-dynamic --with-zlib-include=F:\zlib-1.2.8 --with-zlib-lib=F:\zlib-1.2.8\zdll.lib
nmake
nmake test
nmake install
成功以下将默认把openssl安装到C:\Program Files\OpenSSL,编译成品支持zlib/gzip解压缩,编程时请把zlib1.dll拷贝到程序目录
zlib-dynamic
Like "zlib", but has OpenSSL load the zlib library
dynamically when needed. This is only supported on systems
where loading of shared libraries is supported.
按照官方INSTALL所说zlib将会按需动态调用。
编程成功还没测试, 其中zlib是用vc6编译,openssl用vc10编译。
Windows XP SP3下编译安装openssl-1.1.0b的更多相关文章
- Windows XP SP3下编译安装check-0.10.0
		
软件环境:visual studio 2010 cmake-3.6.3-win32-x86 从github.com下载check-0.10.0到本地,解压出目录check-0.10.0 下载cmake ...
 - Windows XP SP3下成功编译CUint2.1-3
		
软件环境:Visual C++ 6.0 操作系统:Windows XP SP3 从sourceforge.net下载CUint-2.1-3.tar.bz解压出目录CUnit-2.1-3 从CUint打 ...
 - 在windows XP系统下编译和使用ffmpeg
		
最近在做流媒体开发这一块,在服务器端,所用的live555不支持mp4,avi等视频容器格式,所以打算运用ffmpeg来进行扩展.将MP4文件先运用ffmpeg进行解析,解析成live555所支持的基 ...
 - centos下编译安装Openssl
		
yum install -y zlib*mkdir /datacd /data下载好tar包tar zxf openssl-1.0.2g.tar.gzcd openssl-1.0.2g./config ...
 - fedora 21下Virtual Box安装Windows XP SP3
		
Installing Virtual Box and Windows XP SP3 during Fedora 21 The first step:Download and Install Virtu ...
 - Windows编译安装OpenSSL
		
windows下使用vs2008中的nmake编译安装openssl的脚本build.bat: echo off & color 0A :: 项目名称 set PROJECT=openssl ...
 - MDAC 在WINDOWS XP SP3 不能安装 的解决方法
		
MDAC 在WINDOWS XP SP3 不能安装 的解决方法 解决步骤如下: c:/windows/inf 下找出mdac.inf 然后点右键->安装.在弹出提示路径选取c:/windows/ ...
 - 用“U盘”重新安装(MSDN)原版Windows XP sp3操作系统(图文)
		
安装微软(MSDN)原版Windows XP sp3系统的方法不少,可以说是很多,但是我就用“U盘”安装.用“U盘”装XP系统也不是什么稀罕事,不会的,就按照下面我常用的“U盘”装原版Windows ...
 - Windows XP环境下 搭建Android NDK环境
		
搭建Android NDK环境 Windows XP环境下 1 一些下载 ① NDK r7:http://developer.android.com/sdk/ndk/index.html ② cygw ...
 
随机推荐
- ASP.NET SignalR 与 LayIM2.0 配合轻松实现Web聊天室 实战系列(不断更新中)
			
项目简介 利用ASP.NET SignalR技术与Layim前端im框架实现的一个简单的web聊天室,包括单聊,群聊,加好友,加群,好友搜索,管理,群组管理,好友权限设置等功能.涉及技术: Elast ...
 - each循环
			
var NA_COUNT=0; var NG_OK_COUNT=0; //获取所有检验明细为同一个编号的下拉选项,看有没有不是N/A的下拉选项 $("#@(Perfix)tbData sel ...
 - js计算日期之间的月份差
			
<script type="text/javascript"> getMonthBetween("2015-05-01","2016-05 ...
 - bower安装使用入门详情
			
bower安装使用入门详情 bower自定义安装:安装bower需要先安装node,npm,git全局安装bower,命令:npm install -g bower进入项目目录下,新建文件1.tx ...
 - PHP中的Libevent学习
			
wangbin@2012,1,3 目录 Libevent在php中的应用学习 1. Libevent介绍 2. 为什么要学习libevent 3. Php libeven ...
 - Datagridview 添加checkbox列,并判断Datagridview 中的checkbox列是否被选中
			
Solution1://In Fill DataGridViewEvent : DataGridViewCheckBoxColumn ChCol = new DataGridViewCheckBoxC ...
 - 理解Python装饰器
			
装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象.它经常用于有切面需求的场景,比如:插入日志.性能测试.事务处理.缓存.权 ...
 - Gocd持续部署利器
			
http://www.go.cd/documentation/user/current http://www.go.cd/images/home-image1.png Gocd 是ThoughtWor ...
 - 54. Search a 2D Matrix   &&   Climbing Stairs (Easy)
			
Search a 2D Matrix Write an efficient algorithm that searches for a value in an m x n matrix. This m ...
 - oracle PL/SQL管理命令语句
			
一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgrl ...