Francesco Guastella

aka romeoxbm

dep-graphV – A new challenge

After a long time, I come back again to write a few new lines in this virtual space of mine; this time I’m here to talk about my brand new project that I started in this last month: dep-graphV.

dep-graphV is an useful development tool, written in C++ and powered by Qt and GraphViz, that creates a graph of your codebase, by parsing every #include statement found in the project’s root folder.
It is helpful when you need to analize and visualize the dependecy tree, highlightining cycles and “useless paths”, and It means, in short, that you could drastically reduce build times, especially when working on large-scale projects.

Time and time again, I had to analyze my C++ projects for the above reasons, and as many of you know, especially who read Large-Scale C++ Software Design (I heartily recommend it), the above need often had a critical importance.
I searched and found a lot of tools able to face that need, but no one fully satisfied me, and, above all, no one was endowed with what I considered an important requisite: multi-platform; So here they are all the reasons why I started working on dep-graphV.

The project (my first open-source one) has been released under MIT license and it’s available at [link].

These are the main features of the 0.1 version:

  • CMake based build, so it’s easy to switch between different platforms/IDEs;
  • Build against Qt4 or Qt5 by simply changing QT_USE_QT5 variable value in CMake;
  • OpenGL rendering support;
  • Optional recursive folder scan;
  • Customizable file extension filters (for both header and source files);
  • Graphs can be saved as images (.png, .jpg and .svg) or in GraphViz dot format.

Some application’s screenshots are available in this site’s gallery ( click [here] ).

If you are a C++ developers, maybe you could be interested in checking out the project page at SourceForge.net [link].
I’ll keep you up on additional project news, and on version 0.2 release.


Leave a Reply

Switch to our mobile site