Dopo aver aggiunto le opzioni di collegamento: -lssl e -lcrypto, il mio programma è stato compilato correttamente. Tuttavia, ho trovato che GCC non include le due opzioni, quindi da dove provengono le opzioni?Opzioni di collegamento OpenSSL -lssl e -lcrypto in GCC
7
A
risposta
9
GCC documentation ci dice che -l
è l'opzione per il collegamento con una libreria.
-llibrary
-l library
Search the library named library when linking. (The second alternative with the
library as a separate argument is only for POSIX compliance and is not
recommended.)
Quindi stai dicendo a gcc di collegarsi con le librerie "ssl" e "crypto". Queste librerie sono in genere installate in /usr/lib
. Su Linux verranno chiamati libssl.so
e libcrypto.so
. Su OS X saranno chiamati libssl.dylib
e libcrypto.dylib
.
+0
Su Cygwin si chiameranno libssl.a e libcrypto.a –
Releated, vedere [Errori che si riferiscono a una serie di simboli OpenSSL irrisolti che esistono chiaramente?] (Http://stackoverflow.com/q/15318978). – jww