未定义的引用`_WinMain@16';在openssl中使用cygwin和mingw

未定义的引用`_WinMain@16';在openssl中使用cygwin和mingw,cygwin,openssl,mingw,winmain,Cygwin,Openssl,Mingw,Winmain,我在这里和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: und

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

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

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

请参阅。步骤概述如下:

  • 使用
    msys工具
    NOT7-zip解包.tar

  • 使用
    tar-xzf openssl-x.y.z.tar
    其中x.y.z表示您的版本

  • 然后运行命令,它将像一个符咒一样工作


  • 我认为你删除了太多的错误日志。再次说
    make
    ,然后把你得到的东西放到pastebin.com或类似网站上。不要
    makeclean
    ,告诉它在再次失败之前重试最后的步骤。我确实跳过了这个问题,所以我不再与它斗争了。谢谢你的评论(虽然我在这里查过了,但实际上我没有看到)。虽然这可以从理论上回答这个问题,但在这里包括答案的基本部分,并提供链接供参考。