第一个版本:

编译工具 VS2010
OpenSSL版本 openssl-1.0.0a

下载 OpenSSL http://www.openssl.org/
下载 from http://www.activestate.com/ActivePer

OpenSSL目录中有个名为INSTALL.W32的说明文件。

将C:\Perl\bin的路径设置到环境变量Path中,设置好Perl的路径后,执行:(这些都是摘抄INSTALL.W32的)

perl Configure VC-WIN32 no-asm
--prefix=e:/openssl(OpenSSL源代码的解压目录)

如果想编译Debug的版本则执行:
perl Configure debug-VC-WIN32 no-asm --prefix=e:/openssl

(先编译Release版本,再编译Debug版,否则会出错,原因我不清楚。)

然后在OpenSSL根目录下执行(不要进入到ms目录中执行,否则有的文件或目录找不到)
ms\do_ms.bat

用Visual Studio 2008 Command Prompt进入到openssl根目录,执行:
nmake -f ms\nt.mak(编译dll库则用ntdll.mak)

编译结束后OpenSSL的文件夹下会多出inc32,out32的文件夹。

编译OpenSSL的第二个版本:

OpenSSL库网上只有源代码,我们首先需要编译。从http://www.openssl.org/source/openssl-0.9.8k.tar.gz下载源代码包,然后解压到目录C:\openssl-0.9.8k下(最终存在目录C:\openssl-0.9.8k\apps即表示正确)。进入Visual
Studio 2008的命令提示符(开始–>所有程序–>Microsoft
Visual Studio 2008–>Visual Studio
Tools–>Visual Studio 2008 Command
Prompt),依次输入如下命令:

mkdir c:\openssl_lib
cd C:\openssl-0.9.8k
perl Configure VC-WIN32
–prefix=c:/openssl_lib
—输出如下的信息:
……
RC4_CHUNK is undefined
Configured for VC-WIN32.
ms\do_masm
nmake -f ms\nt.mak
—好了,去喝杯咖啡吧,半个小时后应该编译完了。
nmake -f ms/nt.mak test
—如何库编译正确,你应该看到“passwd all tests”字样。
nmake -f ms\nt.mak install
—现在应该在c:\openssl_lib下安装了openssl库文件和头文件了。
—如果编译出错,那么也可以查看文件C:\openssl-0.9.8k\INSTALL.W32,里面列举了一些错误处理方法。
 
两个版本一起看可以更好的理解OpenSSL的编译!

VS2010编译OpenSSL(两个版本)的更多相关文章

  1. 64位Win7下用VS2010编译OpenSSL

    http://blog.csdn.net/henter/article/details/8364532 首先要说明,如果不想自己编译OpenSSL,可以到 http://slproweb.com/pr ...

  2. USGS-EROS项目espa-surface-reflectance中的Landsat8 大气校正LaSRC Version 1.3.0模块利用vs2010编译出windows64位版本(四)

    ,支持一些关键问题: 1    数据初始化问题.该问题是指在linux环境下编程标准c并编译,用户定义的变量默认初始值是0,但在windows 64 win7环境中,变量默认初始值是负值极小.... ...

  3. Lansat8大气校正USGS-EROS项目espa-surface-reflectance中的LaSRC Version 1.3.0模块利用vs2010编译出windows64位版本的使用(三)

    Landsat8大气校正程序LaSRC是目前最好的,使用方式也够傻瓜,输入文件输出结果. 但有一个限制,就是程序需要预先下载好的MODIS辅助文件来确定水汽.压强等大气参数. 如果待大气校正的land ...

  4. vs2010 编译Qt5.2 rc1

    首先要准备一些依赖: 下载Qt 5.2.0 rc版的源码 qt-everywhere-opensource-src-5.2.0-rc1.7z 并解压出来, 我的路径为D:\qt5\qt-src-5.2 ...

  5. [转] Windows下编译OpenSSL

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

  6. vs2008编译openssl问题

    运行openssl demo 时,debug 版本正常,release 版本报异常:OPENSSL_Uplink(585E6000,08): no OPENSSL_Applink .demo 编译环境 ...

  7. vs2010编译出的exe“应用程序无法正常启动(0xc0150002)”

    今天编译出一个使用ogre1.6.5动态库的应用程序,启动时报"应用程序无法正常启动(0xc0150002)"的错误提示. 编译环境是Win10+VS2010.这个错误可以在Win ...

  8. VS2010 win7 QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序

    下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip, 不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0 ...

  9. 亲测VS2010纯静态编译QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序(图文并茂,非常详细)

    下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip,不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0- ...

随机推荐

  1. poj 3053 优先队列处理

    Fence Repair Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 39029   Accepted: 12681 De ...

  2. Kubectl管理工具

    1.常用指令如下 运行应用程序 [root@manager ~]# kubectl run hello-world --replicas=3 --labels="app=example&qu ...

  3. pat 1074. 宇宙无敌加法器(20)

    1074. 宇宙无敌加法器(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 地球人习惯使用十进制数,并且默 ...

  4. sql2008百万级数据排除重复信息

    --高性能排除重复select userid from table where userid in ( select userid from ( select userid, row_number() ...

  5. 17.2.10 NOIP模拟赛 聪哥的工资

    聪哥的工资 (money/money.in/money.out) 时限1000ms 内存256MB 题目描述 lwher: 了体验劳苦大众的生活,聪哥在暑假参加了打零工的活动,这个活动分为n个工作日, ...

  6. [LeetCode] Insert Interval 二分搜索

    Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if necessa ...

  7. eclipse在linux環境下安裝注意事项

    文件如果安装在非home文件夹下必须为eclipse授权 sudo chmod -R 777 /usr/tools/eclipse

  8. Linux 环境下安装配置 TigerVNC Server 并启用当前会话远程服务(X0VNC)

    曾经喜欢用 RealVNC Server 实现 Linux/Windows 的远程控制,因为 RealVNC 为收费商业软件,支持文件传输,性能优化方面也做得不错.但 RealVNC 从 5.0 版本 ...

  9. Linux定时关机

    sudo shutdown -h +120 :两小时后关机sudo shutdown -h 23:00 :表示在23点定时关机 一.shutdown命令关机 各参数功能: -c 取消前一个shutdo ...

  10. AC日记——队列安排 洛谷 P1160

    队列安排 思路: 链表裸题: 来,上代码: #include <cstdio> #include <cstring> #include <iostream> usi ...