If your app is already reasonably portable, consider porting to Linux solely to use Valgrind. It's that good. Otherwise, have you looked at Rational's Purify? I haven't used it myself but hear it has some pluses and minuses as compared to Valgrind, but is worth a look.
I find valgrind invaluable; a lot of people swear by Purify instead. They sound like similar tools. I've never used the later but would love a comparison by somebody who's used both.
What (think) I know :
valgrind is free, purify is proprietary
purify runs on some platforms that valgrind doesn't (BTW, I use valgrind on FreeBSD too)
purify requires to link your program with its library, valgrind runs unmodified binaries on a virtualized processor
valgrind has additional modules, like a profiler or a thread race condition detector
I find valgrind invaluable; a lot of people swear by Purify instead. They sound like similar tools. I've never used the later but would love a comparison by somebody who's used both.
What (think) I know :- valgrind is free, purify is proprietary
- purify runs on some platforms that valgrind doesn't (BTW, I use valgrind on FreeBSD too)
- purify requires to link your program with its library, valgrind runs unmodified binaries on a virtualized processor
- valgrind has additional modules, like a profiler or a thread race condition detector
What I'd love to know :