C/C++项目依赖分析器
cppdep的Python项目详细描述
cppdep执行依赖关系分析 在大型C/C++项目之间的组件/包/包组之间。 这是对dep_utils(adep/cdep/ldep)的重写, 由约翰·拉科斯的书提供 《大规模C++软件设计》,Addison Wesley(1996)。
限制
- 全局变量或函数的间接声明 而不是在声明中包含正确的组件头。
- 嵌入的动态依赖项, 例如动态加载和可配置的内部服务。
- 未执行预处理或宏扩展。 不处理通过预处理器meta programming包含的依赖项。
- 用c风格的多行注释或宏排除依赖关系 不受尊重。
要求
- python 2.7或3.4+
- NetworkX
- 圆点
- Pydotplus
- 皮亚姆
- Pykwalify 1.6.0+
依赖项可以用pip安装。
$ sudo pip install -r requirements.txt
安装
来源:
$ ./setup.py install
pypi的最新稳定版本:
$ pip install cppdep
用法
创建配置文件 描述要分析的项目的。 config_schema.yml用于指导。
在带有配置文件的项目的根目录中, 运行以下命令以生成依赖关系分析报告和图表。
$ cppdep -c /path/to/config/file
更多文档和示例配置 可以在项目wiki中找到。
致谢
- 约翰·拉科斯发明了这个分析并提供了dep_utils。
- Zhichang Yu用于将dep_utils重写为python。