Forum Programmation.c++ probleme avec dlopen : undefined symbol

Posté par  .
Étiquettes : aucune
0
1
mai
2005
j'ai un a.out et un module.so;
il y a le code d'une classe "A" dans le a.out;
il y a le code d'une classe "B" dans module.so;

le problème : je veux passer une classe "A" à une méthode de "B", cette méthode appelant elle-meme une méthode de "A".

en résumé :
A * a = new A;
B * b = creerClasseB_via_dlopen ();
B->f (a);

avec:
B::f (A * a)
{
a->g(); // <== problème
}

à l'exécution, j'obtiens "undefined symbol : g"
pourtant, j'ai :
> nm module.so | grep g
> U g
> nm a.out | grep g
> T g

faut-il compiler le a.out avec des options permettant la résolution des symboles ?

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.