Question

Ok, j’ai un devoir scolaire de choisir 3 programmes de détection de fuite de mémoire et de les exécuter sur un ensemble de programmes c ++ que l’enseignant nous fournit et voir comment ils se comparent les uns aux autres. Ces 3 programmes doivent être multi-plateformes et c'est là que je suis bloqué. J'ai seulement pu en trouver un qui s'appelle valgrind et qui fonctionne à la fois sous MAC OSX et Linux. Est-ce que quelqu'un connaît quelques autres? Presque tout ce que je trouve semble ne concerner qu'un seul système d'exploitation ou je dois le payer. Je n'ai pas à les exécuter sur chaque système d'exploitation, ils doivent simplement disposer d'une version qui s'exécutera sur un autre système d'exploitation. Toute aide serait appréciée.

EDIT: Il s’est avéré que j’avais complètement mal compris ma tâche et que je devais avoir, comme par exemple, 1 pour Linux et 2 pour Windows. En gros, je ne peux pas avoir tous les 3 pour un système d'exploitation. Cela facilite énormément les choses.

Était-ce utile?

La solution

Etant donné que les programmes de détection de fuites utilisent un code d'instrumentation spécifique au système d'exploitation qui l'a injecté, il n'existe pas beaucoup de solutions multi-plateformes, chaque système d'exploitation disposant de ses propres fonctionnalités de gestion de la mémoire.

J'avais l'habitude de travailler avec bounds-checker, AQTime (plus moderne), mais ils fonctionnent tous deux sous un logiciel Windows. si votre code est du pur C ++ que vous ne pouvez le porter que dans l'environnement MS - et le vérifier ici.

Autres conseils

Le purify d'IBM comprend Linux, Windows et diverses versions Unix (non bien sur OSX). C'est un logiciel payant, mais vous pourrez peut-être utiliser la version d'évaluation.

Vous pouvez essayer Electric Fence ( efence )

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