Ich versuche, libass in eine gemeinsam genutzte Bibliothek mit statischer Verknüpfung unter MinGW-w64 zu erstellen. Wenn ich mitBeim Erstellen einer gemeinsam genutzten Bibliothek wurde stattdessen eine statische Bibliothek erstellt.
./configure --disable-static --enable-shared
konfiguriere, erzeugt es die gemeinsam genutzte Bibliothek (dynamisch verknüpft) wie erwartet. Wenn jedoch I durch statische Verknüpfung zu erzwingen versucht Einstellung
LDFLAGS=-static
stattdessen eine statisch gelinkte Shared Library of Erzeugen (DLL ohne Abhängigkeit), erzeugt es eine statische Bibliothek (.A).
Ich bin fast sicher, dass ich alle abhängigen statischen Bibliotheken habe und keine Fehler- oder Warnmeldung im make-Prozess angezeigt wird.
Kann jemand bitte etwas Licht auf das, was ich falsch mache, werfen?
Ich markiere dies als die richtige Antwort, weil der Grund des Problems in der Tat ist, libtool verbraucht die '-static'-Option, anstatt es zu übergeben. Die Lösung, die ich gefunden habe, besteht darin, "-Wc, -static" in "LDFLAGS" zu setzen, damit libtool im Link-Modus "-static" an gcc weitergibt, um statische Verknüpfungen von Abhängigkeiten zu erzwingen. – yhc