-
debug et dll
Bonjour,
Je veux debugger une application chargeant des dll, où est-ce que je dois les mettre pour debugger?
Bien sûr j'utilise Code::Blocks, et les dll sont présentes dans le dossier du .exe final, ainsi que dans le répertoire bin de minGW, et j'ai "runtime error".
Merci d'avance
-
Quelle genre de DLL utilises-tu ?
Comment sont-elles liées à ton application ( grâce à la méthode Loadlibrary ou en liant une lib d'import ) ?
Un bout de code peut toujours servir pour iliuster.
-
Je n'ai aucun morceau de code d'exemple, c'est les libs importées qui s'en chargent.
Mes dll sont glut32.dll, libz.dll, libpng.dll et fmodex.dll
-
Je suis pratiquement sûr que GCC est incapable de debugger de genre de DLL (espérons que je me trompe ; ))
Mais d'autre côté, ces DLL sont le résultat d'un travail important et sont normalement testés de fond en comble, donc si tu as une erreur, c'est serai plus ta façon d'utiliser telle ou telle méthode qui poserai problème plutôt que les librairies elle-même.
Si toute fois tu es certains de ton code, va jeter u coup d'oeil du côté des développeurs, voir si ton bug n'a pas été découvert, ou qu'une nouvelle version existe.
-
en gros il faudrait que je refasse un projet séparé?
-
Qu'entends-tu par refaire un projet à côté ?
Veux-tu réécrire ces DLL ? :?
Si tel est le cas, ce serai pour toi une GROSSE perte de temps pour arriver à un résultat qui serai largement inférieur à celui offert par l'utilisation de ces DLL (sans vouloir te sous-estimé, bien sûr ;) )
-
je veux dire tester le code de manière à l'isoler des dll (mon problème n'a à priori aucun rapport avec les dll, si ce n'est que je n'arrive pas à debugger), du moins les morceaux qui posent problème, et ainsi pouvoir debugger.
-
D'accord, donc si j'ai bien compris tu veux créer des fonctions qui vont tester un bout de ton code, mais en dehors du contexte de celui-ci.
Si c'est ça (le soir j'ai un peu de mal :D ), ce n'est pas une mauvaise idée, cela te permettra de savoir quel partie de code peut ou pose problème.
A noter que même si tu ne peux pas aller vagabonder dans les DLL, tu peux toujours watch les struts et les classes (normalement, ça, ça marche ;) )