ALib C++ Library
Library Version: 2402 R1
Documentation generated by doxygen
No Matches
Tools for ALib
We are happy to receive user input that helps coding with ALib with different IDEs, debuggers and other software development tools.

1. Pretty Printers for GNU Debugger (gdb)

GNU debugger supports python scripts that allow the display of complex data types with so called pretty printers . ALox provides such script for its common classes and for classes of the underlying library ALib.

The script is found in the ALox source folder under


We think the biggest problem of the concept is that the contract between the debugger and the printers is not duly specified. This means, it is not clear, what the printers should deliver and which format to use. Now, different IDEs seem to interpret the output of such printers differently and the development of the script was a pain...and with new types it is never finished. Nevertheless, they are very helpful, of-course.

Be sure to read the remarks on the top of the script!

2. Valgrind Error Suppression

Previous versions of the library provided a .supp file for the analyzer tool Valgrind .

This file is not available in current releases anymore. Instead, code selection symbol ALIB_AVOID_ANALYZER_WARNINGS is available. This symbol changes some details of the implementation of library types, which suppress unjustified Valgrind warnings.
In addition, if the unit tests are built with this symbol, time-critical sections allow more time to spend in the tests, with the effect that the unit tests successfully run under valgrind (reporting no leaks.

3. Doxygen Dot-File Fixer

A small tool for patching the diagrams of the Doxygen documentation of ALib . The cmake project is found in the ALox source folder under:


It consists only of a single main.cpp file and the CMake target is configured to write the release version into the


folder. There, when available, the tool is used by doxygen as a replacement to the Graphviz dot tool . The tool patches the dot file that is to be processed and then invokes the original software.
This tool is only needed, if the HTML documentation (which you are currently reading) is to be 'compiled' from scratch.