7

从官方 OpenSSL 站点下载源文件。我遵循 OpenSSL 文件夹中的 INSTALL.M32 文件。我打开 msys.bat,转到 OpenSSL 文件夹,然后键入

$ ./config

它说“为 MinGW 配置”,而不是我输入

$ make

几分钟后收到错误:

md2test.c:1:10: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
4

6 回答 6

15

我只是打开了导致错误的文件 (/test/"md5test.c; rc5test.c; jpaketest.c") 并替换了该行

dummytest.c

#include "dummytest.c"

它与上述相同的解决方案,除了它有点快......

于 2011-12-04T15:37:12.300 回答
14

问题在于它md2test.c实际上是一个符号链接,或符号链接dummytest.c

如果您openssl-1.0.1c.tar.gz使用除

tar xf openssl-1.0.1c.tar.gz

然后这些符号链接没有被保留。在 Cygwin 上它在那之后工作;不确定MinGW。

于 2012-05-13T01:48:50.343 回答
3

就我而言,问题是很少有测试文件(据我所知是 3 个)有文件名而不是 C++ 代码(类似于 dummitest.c)。我从其他文件夹的文件中将正确的代码复制粘贴到该文件中,但名称相同,一切正常。

于 2011-09-07T07:48:13.120 回答
2

你用什么程序解压'openssl-1.0.0x.tar.gz'?7-zip 是一个很棒的程序,但似乎有一个错误。

使用 tar 或其他解压缩器,例如BreadZip

tar zvxf openssl-1.0.0x.tar.gz

它与上述相同的解决方案,除了它有点快...... :)

于 2012-02-07T00:05:18.330 回答
1

问题是存档中的一个符号链接,MinGW/MSYS 似乎不理解。

您可以在提取时使用--derefence( -h) 选项来解决它。

例如tar -xzvfh archive.tar.gz

来自http://www.gnu.org/software/tar/manual/html_node/dereference.html

从存档中读取时,--dereference' (-h') 选项会导致 tar 在 tar 写入或读取存档中指定的文件时遵循已存在的符号链接。

于 2015-06-20T12:43:31.427 回答
0

我有同样的问题。由于问题是在构建测试时,我只是没有制作它们:

make Makefile openssl.pc libssl.pc libcrypto.pc build_libs build_apps build_tools

是一个可怕的解决方案,但它似乎工作。你得到了库和工具,但没有得到测试套件。

我希望有人给出更好的答案和/或解决代码问题(如果有的话)。

于 2011-09-06T19:35:33.513 回答