Wie kann ich angeben, dass die Bibliothek X statisch verknüpft werden muss?

8

Ich habe eine Software, die mit mehreren Bibliotheken verknüpft ist. Sie alle existieren in einer dynamischen (.so) und einer statischen (.a) Version. Standardmäßig wählt man bei Verwendung von g ++ die dynamische Version der Bibliotheken, und das ist für mich in Ordnung.

Einer davon muss jedoch unbedingt statisch verknüpft werden. Ich dachte über -static nach, aber dann verwendet es eine statische Version für alle von ihnen, was nicht das ist, was ich will.

Wie kann ich angeben, dass die Bibliothek X statisch verknüpft werden muss, während die anderen weiterhin mit der freigegebenen Version der Bibliotheken verknüpft werden?

    
Barth 23.10.2008, 07:47
quelle

1 Antwort

9

g ++ -o foo (foo-Objekte) -Wl, -Bstatic -lmustbestatic -Wl, -Bdynamic -lother-lib

    
Jack 23.10.2008, 08:02
quelle