De -static
flag dwingt de linker om alleen statische bibliotheken te accepteren en geen gedeelde bibliotheken. Met andere woorden, het vereist geen afhankelijkheid van dynamische bibliotheken tijdens runtime om te kunnen draaien. Hoogstwaarschijnlijk mongocxx
heeft enkele afhankelijkheden. Om statische koppelingen te realiseren, moeten de archiefversies (.a) van uw bibliotheken op het systeem aanwezig zijn.
Het andere mogelijke probleem is dat de volgorde van statische bibliotheken in de linker-opdrachtregel ertoe doet, dus dat kan ook een probleem zijn als er een afhankelijkheid is van verschillende statische bibliotheken. De linker verwerkt de bibliotheken in de volgorde waarin ze zich in de opdrachtregel bevinden, en uit elke statische bibliotheek worden alleen die symbolen opgehaald die nodig zijn (met zoveel informatie als de linker op dat moment heeft)
Gebruik nm . Dat geeft je de namen van de symbolen.