gpt4 book ai didi

clang - 使用 Clang/Ninja 产生所有可能的错误/继续使用 Ninja/Ninja 相当于 make -k

转载 作者:行者123 更新时间:2023-11-30 04:42:04 25 4
gpt4 key购买 nike

我正在编译一个相当大的库,其中包含许多我需要引入的外部依赖项。每次尝试编译时,我都会收到有关缺少头文件的新错误。然后我必须去追踪在哪里可以找到该 header /库并将其添加到项目包含中。这种先编译后查找头文件/源码的过程反复进行,耗费大量时间。

我希望编译器继续尝试在一个错误列表中构建和输出所有缺失的 header 。这可能使用 Clang 吗?如果可以,我该如何控制它?在相关说明中,一旦我拥有所有 header ,是否可以告诉 Clang 报告所有链接器错误/ undefined reference ,这样我就不必对源文件重复此过程?

我正在寻找编译器标志以打印出所有可能的错误(缺少 header )和所有 undefined reference 。换句话说,我希望编译继续通过第一个有错误的文件并尝试编译项目中的所有文件。编译器是 Clang (C/C++) 版本 8.0.2。制作工具是 ninja (1.5.3)。使用 CMake (3.6.4) 生成 Make 文件。

更新:回想起来,我最初的问题是在错误的工具中寻求解决方案。我需要将标志传递给我的制作工具 Ninja,而不是将标志传递给 Clang。

最佳答案

来自 ninja --help:

-k N     keep going until N jobs fail [default=1]

所以我会像这样运行 ninja 命令:

ninja -k 100

继续,直到发现 100 个错误或构建成功。需要注意的一件事是,如果错误文件是继续构建过程所必需的,则某些错误可能只会停止整个构建。

关于clang - 使用 Clang/Ninja 产生所有可能的错误/继续使用 Ninja/Ninja 相当于 make -k,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58920832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com