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. However Clang is strict and if the code doesn’t compile or the include paths and defines are not setup correctly you can use the light parser.

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.
However in case of it's difficult to get the needed info from your build process, you can use the light parser which give an acceptable result.
You can choose the light parser from the menu Tools->Options->Parser configuration.
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.

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)

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 2005 (Standard/Professional/Team)
  • Visual Studio 2008 (Standard/Professional/Team)
  • Visual Studio 2010 (Standard/Professional/Team)
  • Visual Studio 2012 (Standard/Professional/Team)
  • Visual Studio 2013 (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.

Licensing and ordering

We offer Developer, Build machine and Full editions. For more details see the purchase page.
Each license entitles you to all maintenance and update releases within the same major version.
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 sales@cppdepend.com 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 see the purchase page or contact us.

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.

Contacts

Business Hours

  • Monday-Friday: 10am to 8pm
  • Saturday: 11am to 3pm
  • Sunday: Closed