Je dois modifier un programme pour que le chargement des libraries dynamiques puisse se faire de maniere transparente sur une station Linux au bien qu'un PC Windows.
Je travaille sous Linux en C/C++.
Le code actuel utilise le dlopen()... sdt unix. C'est celui la que j'ai essaye de remplace pour qu'il fonctionne aussi sous Windows.
J'ai essaye les utilitaires Libtool avec libltdl, qui permet de faire exactement ce que j'a besoin. Cela fonctionne pour les librairies sans erreurs, mais il me faut un programme capable de detecter les eventuelles erreurs. la fonction lt_dlerror() censee remplace le dl_error() est en effet buggee parce qu'elle me genere soit une erreur qd y en a pas, soit un "beau segmentation fault" qd y en a une. Les erreurs dont je parles sont des "undefined symbol in shared library...".
J'ai aussi essaye QT3 avec la classe QLibrary. Mais la encore, y a pas de fonction de detection d'erreur valide, et en +, j'arrive a charger les librairies mais la fonction unload() me fait aussi une segmentation fault.
J'ai deja passe 3 semaines sur ce pb, et si je ne trouves pas une solution rapidement, et bien mon boulot aura ete inutile. Ca va etre dur apres pour remplir mon rapport de stage (je suis actuellement en stage "ingenieur" ).
Si qqn pouvait me donner une idee, elle serait la bienvenue !!