为什么openssl/ssl.h只包含相对路径? [英] Why does openssl/ssl.h contain nothing but a relative path?
问题描述
我通过执行以下操作,使用MSVC ++ 2013 Express编译器构建了OpenSSL:
I built OpenSSL using the MSVC++ 2013 Express compiler by doing the following:
- 从 openssl-1.0.1e.tar.gz 并将其提取到
C:\OpenSSL\Win64
. - 打开"VS2013 x64交叉工具命令提示符",然后
cd
进入我提取存档的目录. -
运行以下命令:
- Installing ActivePerl 5.16.3 from here.
- Grabbing openssl-1.0.1e.tar.gz and extracting it to
C:\OpenSSL\Win64
. - Opening up the "VS2013 x64 Cross Tools Command Prompt" and
cd
-ing to the directory where I had extracted the archive. Running the following commands:
perl Configure VC-WIN64A
ms\do_win64a
nmake -f ms\ntdll.mak
此操作已完成,没有错误(已构建正确的DLL).但是,发生了非常奇怪的事情.如果打开openssl/ssl.h
,则文件内容为:
This completed without errors (the proper DLLs are built). However, something very strange has happened. If I open up openssl/ssl.h
, the contents of the file are:
../../ssl/ssl.h
由于这显然不是有效的C/C ++,由于上述问题,我无法编译任何依赖于OpenSSL标头的应用程序.我做错了什么?
Since this is obviously not valid C/C++, I can't compile any applications that depend on OpenSSL headers due to the problem above. What have I done wrong?
推荐答案
duskwuff 的 GnuWin32的tar
命令行实用程序,并将其用于提取档案:
duskwuff's comment was indeed correct. The problem was that 7-Zip didn't properly extract the symbolic links in the archive. The solution was to download GnuWin32's tar
command line utility and use that to extract the archive:
tar -xvf openssl-1.0.1e.tar.gz
这篇关于为什么openssl/ssl.h只包含相对路径?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!