2012-04-11 4 views
1

Ich bin irgendwie kämpfen mit OpenSSL hier. Ich habe die aktuelle Version 1.0.1 heruntergeladen und die Kompilation selbst funktioniert. Ich kann sogar ./apps/openssl.exe aufrufen. Aber wenn ich an den Verknüpfungsvorgang erhalten die Linke klagt:undefined Verweis auf `_WinMain @ 16 'mit Cygwin und Mingw in OpenSSL

/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 `[email protected]' 

(das ist, wenn ich mingw in Cygwin verwenden, der gleiche Fehler mit Cygwin selbst auftritt) Dies ist der Cygwin-Fehler:

/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../libcygwin.a(libcmain.o):(.text+0xba): undefined reference to `[email protected]' 

Jetzt habe ich herausgefunden, dass dies bedeutet, dass es keine Hauptfunktion findet, aber das könnte nicht wirklich sein, oder? Ich meine, openssl hat seine Hauptfunktion. Und bezüglich Mingw: Ich kann die Datei nicht finden, die es erwähnt, so könnte es Ursache des Fehlers geben, aber libcygwin.a existiert (obwohl ich keine Idee habe, herauszufinden, ob es eine Hauptfunktion hat).

Also grundsätzlich frage ich: Warum tritt dieser Fehler auf, der nur auftritt, wenn ich keine Hauptfunktion hinzufüge. Habe ich etwas verpasst?

Edit: Leider verpasst, dass haben: Ich bin auf Win 7 x64 Unternehmen

+0

Ich denke, Sie schneiden zu viel des Fehlerprotokolls ab. Sagen Sie 'make' nochmal und setzen Sie was Sie auf pastebin.com o.ä. Nicht "sauber machen", sondern nur die letzten Schritte wiederholen, bevor es erneut fehlschlägt. –

+0

Ich habe das Problem tatsächlich übersprungen, damit ich nicht mehr damit zu kämpfen habe. Danke für deinen Kommentar (den ich eigentlich nicht gesehen habe, obwohl ich hier nachgesehen habe). – javex

Antwort

2

Siehe this for a solution. Schritte im Folgenden zusammengefasst:

  1. entpacken Sie die TAR mit dem msys tools und NICHT 7-zip.

  2. Verwenden Sie tar -xzf openssl-x.y.z.tar, wobei x.y.z Ihre Version angibt.

  3. Dann führen Sie die Befehle und es wird wie ein Charme funktionieren.

+0

Während dies theoretisch die Frage beantworten könnte, [wäre es vorzuziehen] (http://meta.stackexchange.com/q/8259), die wesentlichen Teile der Antwort hier aufzunehmen und den Link als Referenz bereitzustellen. – RivieraKid

Verwandte Themen