2017-05-03 3 views
1

Lors de la construction d'OpenSSL-1.1.0d je reçois ci-dessous erreur."référence indéfinie à strerror_r" avec OpenSSL-1.1.0e et MinGW

./libcrypto.a(o_str.o):o_str.c:(.text+0x5cb): undefined reference to `strerror_r' 
collect2.exe: error: ld returned 1 exit status 
make[2]: *** [Makefile.shared:187: link_app.] Error 1 
make[2]: Leaving directory '/c/MinGW/openssl-1.1.0d' 
make[1]: *** [Makefile:5966: apps/openssl.exe] Error 2 
make[1]: Leaving directory '/c/MinGW/openssl-1.1.0d' 
make: *** [Makefile:128: all] Error 2 

J'ai suivi les étapes ci-dessous pour construire

  1. tar -xf vv.tar.gz

  2. perl Configure mingw no-shared

  3. make

Les instructions proviennent de Compiling OpenSSL on Windows (mingw32).

Pourquoi la liaison échoue-t-elle et comment puis-je la réparer?

+0

Vous taggés avec '' C++. Vous *** devez *** construire la bibliothèque avec un compilateur C; pas un compilateur C++. MinGW a été abandonné il y a quelque temps. Pouvez-vous utiliser Cygwin à la place? Le projet OpenSSL a des instructions pour construire avec MinGW dans [INSTALL] (https://github.com/openssl/openssl/blob/master/INSTALL) et [NOTES.WIN] (https://github.com/openssl/openssl /blob/master/NOTES.WIN). Pouvez-vous les utiliser à la place? Vous devrez peut-être définir '_XOPEN_SOURCE = 600'. Voir aussi [Compilation et installation] (https://wiki.openssl.org/index.php/Compilation_and_Installation) sur le wiki OpenSSL. – jww

+0

désolé C++ tag, merci pour votre réponse .. je suis allé jeter votre toute suggestion mais je reçois la même erreur .. :('./libcrypto.a(o_str.o):o_str.c:(.text+0x5cb) : référence non définie à 'strerror_r '' –

Répondre

1

strerror_r ne peut pas être mis en œuvre MinGW, vous devez vérifier minwg documentation la plus récente

+0

merci Pras .. cela a fonctionné après avoir changé à la dernière version de mingw .. merci à tous ... :) –