openssl windows 编译 (总结)

今天在Windows 编译openssl 遇到问题记录一下,供需要的人参考。

参考链接:

http://blog.csdn.net/kingjo002/article/details/8575586

http://stackoverflow.com/questions/31680687/vs2015-msbuild-vsvars32-bat-cannot-determine-the-location-of-the-vs-instal

http://www.vcerror.com/?p=2023

准备:

1.  官网下载openssl: openssl-1.0.2h.tar.gz

     http://www.openssl.org/source/

2. 下载perl 

    http://download.csdn.net/download/xidianliuy/1575757

编译过程:

参考openssl目录下的install.win32说明进行安装:

1、进入解压目录。

>cd C:\openssl-0.9.8k

2、运行Configure。

>perl Configure VC-WIN32

如不成功会有明显提示。

3、创建Makefile文件。

>ms\do_ms

推荐使用这种方式,另外两种方式 如果使用也必须保证本机有编译器才能使用。

:ms\do_masm (默认vc 自带的编译器;也也以自己下载安装)

:ms\do_nasm (需要自己下载)

4、配置VC环境变量。

>cd C:\Program Files\Microsoft Visual Studio\VC98\Bin

  >vcvars32.bat

5、编译动态链接库。

>cd C:\openssl-0.9.8k

>nmake -f ms\ntdll.mak

如果编译成功,最后的输出都在out32dll目录下:包括可执行文件、两个dll(ssleay32.lib, libeay32.lib)和两个lib文件(ssleay32.dll, libeay32.dll)。


遇到问题:

1.  配置VC环境变量时, 

ERROR: Cannot determine the location of the VS installation.

解决方法:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VS7]
"12.0"="C:\\Program Files\\Microsoft Visual Studio 12.0\\"  改成 
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VS7]
"12.0"="C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\"

2. 执行命令  nmake -f ms\ntdll.mak 编译动态链接库时错误如下:

tmp32dll\sha1-586.asm(1432) : error A2070:invalid instruction operands

tmp32dll\sha1-586.asm(1576) : error A2070:invalid instruction operands
NMAKE : fatal error U1077: “"G:\Program Files (x86)\Microsoft Visual Studio 10.
0\VC\BIN\ml.EXE"”: 返回代码“0x1”

解决方法:

方法一: (我用的此方法,问题解决)

需要用nasm ,

先 ms\do_nasm

然后

nmake -f ms\ntdll.mak -a

方法二:(此方法没有试)

禁用汇编

配置时用 perl Configure VC-WIN32 no-asm

生成makefile时用 ms\do_nasm

这样就可以了 




 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值