1

我有点在这里与 OpenSSL 作斗争。我下载了当前版本 1.0.1 并且编译本身可以工作。我什至可以调用 ./apps/openssl.exe。但是当我进入链接过程时,链接器会抱怨:

/usr/i686-pc-mingw32/sys-root/mingw/lib/libmingw32.a(main.o): In function `main':
/usr/src/mingw-runtime/mingw-runtime-3.20-1/src/mingwrt-3.20-mingw32/main.c:73: undefined reference to `_WinMain@16'

(这是如果我在 cygwin 中使用 mingw,cygwin 本身也会发生同样的错误)这是 cygwin 错误:

/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../libcygwin.a(libcmain.o):(.text+0xba): undefined reference to `_WinMain@16'

现在我发现这意味着它没有找到 main 函数,但这实际上不可能,是吗?我的意思是 openssl 有它的主要功能。关于 mingw:我找不到它提到的那个文件,所以可能是错误的原因,但是 libcygwin.a 确实存在(尽管我不知道如何确定它是否具有主要功能)。

所以基本上我问:为什么会出现这个错误,只有在我不添加主函数的情况下才会出现。我错过了什么?

编辑:很抱歉错过了:我在 Win 7 x64 Enterprise

4

1 回答 1

2

请参阅此解决方案。步骤总结如下:

  1. 解压缩 .tar 与msys tools不是7-zip。

  2. 使用tar -xzf openssl-x.y.z.tarxyz 表示您的版本。

  3. 然后运行命令,它会像魅力一样工作。

于 2012-05-03T12:54:58.073 回答