I started the development of a little Valgrind plug-in. At this very moment it is very basic (hey, 2 months ago I didn't even know what Valgrind is).
Attached are the sources and project files for the plug-in. Since Valgrind is only for linux, this is a linux only plug-in. I provide the sources, no binary. Unzip in the plug-ins contrib dir of the CB source tree. It will activate in your CB devel build. If you want it in your output dir or with autotools adjust your update script and top level makefiles accordingly.
Requirements to run it :
- you must be working on an 'executable' project
- it must have as such an executable target
- that target should have the -g compiler option [this is no checked yet, so make sure it is]
- have Valgrind installed
- have kcachegrind installed (to view to cachegrind output)
So when you have such a project/target active and you have built it (say the Debug build -> -g option), then select from the Plugins menu : Valgrind, and Valgrind will run your project/target executable and will create a 2 new panes in the Messages panel and dump it's output in there.
Current limitations :
- currently only for the memcheck/cachegrind tool
- only tested on some simple apps (console apps)
Attached is also a small test example, where you can see the Valgrind plug-in at work
Future tasks :
- check on the -g option
- try with xml output --> better parsing and hopefully click to offending line
- Provide more click to line (next to offending line, this can give information on where something was allocated)
- configurable : where is the valgrind exe [now your linux system has to be able to find it itself]
- configurable : which tool, so other things next to memcheck
- configurable : able to select/specify the options to valgrind tools
- one day try it on CB itself .........
[attachment deleted by admin]