ALib C++ Library
Library Version: 2412 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
Tools for ALib
Note
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 . ALib provides such script for some of its most important classes, for example, all string types, class File, class Variable and several more.

The script is found in the ALox source folder under

    tools/ideplugins/gdb/alibpp.py

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 and work well in JetBrains CLion

To activate the script, under GNU/Linux you need to add the following lines to your .gdbinit:

# ALox pretty printers
python print( ".gdbinit: Inserting ALib/ALox Pretty Printers" )
python sys.path.insert(0, "/home/dev/A-Worx/ALib/tools/ideplugins/gdb" )
python import alibpp

Be sure to adopt the path to the location of your project directory.

2. 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:

tools/DoxygenGraphTemplateInstanceRemover

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

docs/

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.