Question

Je suis en train de charger une bibliothèque de modules via dl de telle sorte que le module peut accéder à l'application GLOBALS principale. Comment est-ce possible de le faire?

Je reçois un message d'erreur de dlopen dire library/name.so: undefined symbol: .... Le seul drapeau utilisé est:. RTLD_NOW

Le module lui-même est construit avec libtool avec -module -avoid-version.

Était-ce utile?

La solution

La réponse est: l'utilisation -Wl,--export-dynamic en liant le binaire principal, de sorte que tous les symboles sont exportés automatiquement aux bibliothèques chargées

.

Même question, vient de demander différemment: Recevoir erreur "symbole non défini" lors du chargement bibliothèque dlopen

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top