Citation :
Est-ce bien l'equivalent d'une Dll mais pour unix ?
|
Non, quand tu charges une bibliothèque partagée, c'est une opération de link (avec résolution des symboles).
Une Dll Windows utilise une table avec les éléments exportés "génériques" (cela peut-etre des pointers sur fonctions de natures différentes). Ca pose de problème quand tu veux exporter des classes. Par contre je crois que ce système est plus rapide
Citation :
Et comment charger un fichier so pour l'utiliser dans une appli ?
|
Au link de l'appli (comme n'importe quel .o). Il y a un moyen de charger une bibliothèque pendant l'exécution en connaissant son nom (comme LoadLibrary sous Windows), mais je connais pas les noms des fonctions (si j'en avais besoin et que personne ne savait, je regarderais dans les sources de xmms, vu qu'il charge des plugins).
Edit: la fonction c'est dlopen (merci google), et la doc c'est man dlopen
Message édité par kenshiro182 le 03-03-2003 à 20:23:19