gcc - Eine statische Bibliothek mit undefinierten Symbolen?

Ich versuche, ein Projekt mit einer statischen Bibliothek zu erstellen, damit die Binärdatei verwendet werden kann, auch wenn die Bibliothek nicht installiert ist. Bei undefinierten Symbolen werden jedoch viele Fehler angezeigt, wenn ich dies versuche.

enn ich mir die Bibliothek ansehe, sehe ich, dass sie unzählige undefinierte Symbole enthält, obwohl es sich um ein @ handel.a static lib:

nm - u /usr/local/lib/libthis.a
....
U EVP_DigestFinal_ex
U EVP_DigestInit_ex
U EVP_DigestUpdate
U EVP_MD_CTX_cleanup
U EVP_MD_CTX_init

Diese scheinen von openssl zu sein; andere scheinen aus libbzip2 zu stammen; etc

Fragen: 1. Warum wirkt die statische .a) lib haben Abhängigkeiten von gemeinsam genutzten Objekten (z. B. libopenssl), die nicht statisch kompiliert wurden? 2. Wie löse ich das? Versuch, @ manuell hinzuzufüg-lssl scheint nicht zu funktionieren. Wie kann ich die Binärdatei kompilieren, ohne externe Abhängigkeiten zu haben?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage