Master CppDepend with Our Comprehensive FAQ Guide

CppDepend FAQ


About the CppDepend Analysis

CppDepend is a tool that simplifies managing a complex C\C++ code base. Architects and developers can analyze code structure, specify design rules, do effective code reviews and master evolution by comparing different versions of the code.

CppDepend is based on Clang for more reliability.

CppDepend provides more than 120 default CQLinq queries to detect flaws concerning:

  • Dependencies,
  • Complex implementations,
  • Naming,
  • Structure problems,
  • and much more ...
You can customize easily these default rules or create your rules using CQLinq
For more flexibility CppDepend provides CQLinq to create easily your custom rules. CQLinq code query language gives you the flexibility to create your custom queries and have a deep view of your code base. With CQLinq you can automate your code review, and integrate it to your build.
As any C/C++ parser, the file parsing is cpu consuming, CppDepend uses two techniques to make the parsing very fast:
  • CppDepend uses multiple cores to parse the files.
  • CppDepend implements the incremental analysis. Even if the first analysis could take few minutes. The next analysis is incremental and take only few seconds.
The CppDepend is based on Clang to parse the source files, and to achieve the code analysis, CppDepend needs the following inputs:
  • Source files.
  • Include paths.
  • Defines.
  • forced includes.
In the C/C++ world there are a lot of managed build systems. Each one has its way to define these data.
The following projects are managed by CppDepend:
  • CppDepend treat out of the box the Visual Studio projects.
  • the .build files generated by our BuildMonitor tool : The recommended way to analyse your C\C++ projects other than the VS ones, is to use the BuildMonitor tool to intercept all compilation and link commands of your build process and create a build specification file.
  • Set of source files: You can use our ProjectMaker tool to describe the specification of your project. With ProjectMaker you can specify your source files, the include paths and the defines.
Clang is strict and to have a reliable result it needs at least the include paths.
CppDepend calculate the logical count of lines, not the physical one, it count the statments which is more accurate. Indeed in case of the logical LOC the Coding style doesn�t interfere with logical LOC. For example the LOC won�t change because a method call is spawn on several lines because of a high number of argument.

Licensing and ordering

We offer developer and DevOps licenses, also we offer a c\c++ plugin license for SonarQube. For more details see the editions page.
  • CppDepend tool works only until the license expiration date,
  • Automatic updates during the entire period of the license being active,
  • Access to tech support within the subscription period
  • License renewal is 80% of the basic price.
The trial license is fully featured, but time limited (14-day free trial.)
You can purchase using your credit card from our purchase page, or purchase directly from us. Please contact us for a quotation.
After your payment is complete, you'll receive two separate e-mails :
  • One confirmation email from BlueSnap, sent a few minutes after you placed your order.
  • One license email with your license ID and license file. The license email is sent from a few minutes to a few hours after you placed your order, the time it takes to validate the payment information.
We provide some flexibility if you would like to purchase large volumes of licenses. For more details please contact us.

Supported Platforms

CppDepend currently supports Microsoft Windows and Linux.
  • For Windows you need .NET version 3.5 to run CppDepend.
  • For Linux you need Glibc 2.13 or higher.

We support:

  • Windows XP (32/64-bit, all editions)
  • Windows Vista (32/64-bit, all editions)
  • Windows 7 (32/64-bit, all editions)
  • Windows 8 (32/64-bit, all editions)
  • Windows 10 (32/64-bit, all editions)

Minimum system requirements:

  • Pentium 4 or better CPU
  • 1 GB or more RAM
  • For the Report, Internet Explorer 7 or above (Firefox 10+ or Chrome recommended)

Most modern Windows PC�s can run CppDepend without any trouble.

We support most recent Linux distributions including:

  • Ubuntu (9 or higher)
  • Fedora (13 or higher)
  • Suse
  • CentOS
  • Red Hat Enterprise Linux

Minimum system requirements:

  • GLIBC 2.13 or higher
  • Pentium 4 or better CPU
  • 1 GB or more RAM
  • For the Report, modern web browsers (Firefox 10+ or Chrome recommended)

Most modern Linux PC�s can run CppDepend without any trouble.

  • Visual Studio 2010 (Standard/Professional/Team)
  • Visual Studio 2012 (Standard/Professional/Team)
  • Visual Studio 2013 (Standard/Professional/Team)
  • Visual Studio 2015 (Standard/Professional/Team)
  • Visual Studio 2017 (Standard/Professional/Team)
  • Visual Studio 2019 (Standard/Professional/Team)
The recommended way is to use Build Monitor, it intercept all your compilation and link commands to generate a build specification file. The generated .build file will be used by CppDepend to analyze your projects.

Another alternative is to use the ProjectMaker.exe to create your project description. but this solution is not recommended because you have to specify yourself all informations needed like defines, include paths ...
No, as Visual Studio Express does not allow for extensions.

Support

Yes, we strive to provide support for reasonable issues.
Typically, we get back to you the next working day. Obviously, the solution will depend on your questions and the issues you have.
For non-standard support issues please contact us directly.
Please contact us. This is most valuable to us in order to continuously improve CppDepend.

CppDepend offers a wide range of features. It is often described as a Swiss Army Knife for C and C++ developers.

Start Free Trial
.