我已经下载了最新的OpenSSL源码包。我想用 VC++ 2010 x64 构建它。按照说明操作似乎不起作用。配置步骤看起来不错,但是:
C:\1>ms\do_win64a.bat
C:\1>perl util\mkfiles.pl 1>MINFO
C:\1>perl ms\uplink.pl win64a 1>ms\uptable.asm
C:\1>ml64 -c -Foms\uptable.obj ms\uptable.asm
Microsoft (R) 宏汇编器 (x64) 版本 10.00.30319.01
版权所有 (C) 微软公司。版权所有。
汇编:ms\uptable.asm
C:\1>perl util\mk1mf.pl no-asm VC-WIN64A 1>ms\nt.mak
util\mk1mf.pl 第 907 行没有 crypto\md4 规则。
C:\1>perl util\mk1mf.pl dll no-asm VC-WIN64A 1>ms\ntdll.mak
util\mk1mf.pl 第 907 行没有 crypto\md4 规则。
C:\1>perl util\mkdef.pl 32 libeay 1>ms\libeay32.def
C:\1>perl util\mkdef.pl 32 ssleay 1>ms\ssleay32.def
Win32 (do_ms) 输出看起来有点不同,但“在 util\mk1mf.pl 第 907 行没有 crypto\md4 规则”仍然存在。
任何人都可以帮助我构建库或共享 vc2010 构建的二进制文件吗?..或者库的 VS2010 项目文件?
该问题似乎与 eol(行尾)有关。解决方案是修补 mk1mf.pl 以使其删除回车符:
Index: mk1mf.pl
===================================================================
--- mk1mf.pl (revision 88908)
+++ mk1mf.pl (working copy)
@@ -315,7 +315,7 @@
for (;;)
{
chop;
+ s/\r$//; #remove carriage return too!
($key,$val)=/^([^=]+)=(.*)/;
if ($key eq "RELATIVE_DIRECTORY")
{
在openssl用户邮件中找到了解决方案:
http://groups.google.com/group/mailing.openssl.users/browse_thread/thread/42a8f226f1fc279f)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)