如何从CMake或make输出编译依赖关系?
发布时间:2020-12-14 00:49:56 所属栏目:百科 来源:网络整理
导读:我有一个快速增长和经常变化的CMake C项目.我试图将编译时间减少到最小. 通常,当我重建项目时,特别是在头文件更改后,我很惊讶需要重新编译多少个编译单元.我正在尝试识别可以避免的#include,例如通过使用预声明或不在标题中内联琐碎的函数. 有没有办法找出,
我有一个快速增长和经常变化的CMake C项目.我试图将编译时间减少到最小.
通常,当我重建项目时,特别是在头文件更改后,我很惊讶需要重新编译多少个编译单元.我正在尝试识别可以避免的#include,例如通过使用预声明或不在标题中内联琐碎的函数. 有没有办法找出,从CMake本身,从生成的Makefile,或直接从文件本身,哪些单位取决于哪个标题? 一个列表会很好,一个视觉图(graphviz?)甚至更好. Google对我来说没什么. CMake具有–graphviz选项,但它运行在目标上,而不是单个编译单元. 跨平台(即仅使用CMake)是首选,但我也只适用于Linux.
当我使用基于gcc的工具链时,我发现由cmake2.8生成的依赖关系信息(在运行make之后)生活在depend.make和depend.internal文件中.使用VS似乎没有生成这样的文件(但这似乎不是一个问题).这些文件也是cmake内部的,所以使用它们自己承担风险.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |