Enabling CodeGaurd for you RAD Studio C++ application for memory leak detection
Just a quick note on how to enable CodeGaurd memory leak detection under Embarcadero C++ Builder.
- The CodeGaurd setup is under Tools->CodeGuard
Under Project->Options :-
- Under C++ Compiler->Debugging turn "Enable Codegaurd" on
- Under C++ Linker turn off "Link with Dynamic RTL" and check "Full debug information" is turned on
- Under Packages->Runtime Packages turn off "Link with runtime packages"
Now on exiting the application you should be shown the call stack and any resource leaks can be stepped through and are shown in the Messages window under the CodeGaurd tab.
You will also get an
Deleaker to the rescue!
Since the introduction of C++ Clang compiling there is no CodeGaurd variant available for Rad Studio in any version. So if you want to check for code leaks your hands are tied.
This is where a Third party application called Deleaker comes into play and is by far superior to CodeGaurd and along with C++ will also be compatible with C#, .NET and Delphi.
Not only that you get 32bit and 64 bit testing with nice optional integration into the IDE itself.
You not get only get memory leak detection but GDI and handle leak detection as well with the option of running a standalone application that will give your real-time display of leaks along with snapshot functionality.
All in all a super handy tool for C++ leak detection is now available with the modern Clang compliant compilers.