Dependency analyzer for C/C++ projects
cppdep performs dependency analysis among components/packages/package groups of a large C/C++ project. This is a rewrite of dep_utils(adep/cdep/ldep), which is provided by John Lakos’ book “Large-Scale C++ Software Design”, Addison Wesley (1996).
- Indirect extern declarations of global variables or functions instead of including the proper component header with the declarations.
- Embedded dynamic dependencies, such as dynamic loading and configurable internal services.
- Preprocessing or macro expansion is not performed. Dependency inclusion via preprocessor meta-programming is not handled.
- Dependency exclusion with C style multi-line comments or macros is not respected.
- Python 2.7 or 3.4+
- PyKwalify 1.6.0+
The dependencies can be installed with pip.
$ sudo pip install -r requirements.txt
From the source:
$ ./setup.py install
The latest stable release from PyPi:
$ pip install cppdep
Create a configuration file that describes the project for analysis. config_schema.yml is given for guidance.
In the root directory of the project with the configuration file, run the following command to generate dependency analysis reports and graphs.
$ cppdep -c /path/to/config/file
More documentation and example configurations can be found in project wiki.
- John Lakos for inventing the analysis and providing dep_utils.
- Zhichang Yu for rewriting dep_utils into Python.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size cppdep-0.2.4-py2.py3-none-any.whl (18.4 kB)||File type Wheel||Python version py2.py3||Upload date||Hashes View hashes|
|Filename, size cppdep-0.2.4.tar.gz (19.3 kB)||File type Source||Python version None||Upload date||Hashes View hashes|
Hashes for cppdep-0.2.4-py2.py3-none-any.whl