c++ - 有没有办法用 clang 有效地编译已经预处理的文件?

标签 c++ clang c-preprocessor clang++

我使用命令获得了一个预处理文件:clang++ -E test.cc > test.E 然后我想快速编译它。为此,我运行 clang++ -### -c test.cc,然后获取所有这些标志,并将输入文件名从 test.cc 替换为 测试.E.

但我想知道,对于已经预处理的文件,clang++ -### 的输出中是否存在一些冗余标志,或者可能存在一些标志,强制 clang 跳过预处理或其他一些标志不必要的步骤。

目的是加快预处理文件的编译速度。

最佳答案

为了加快编译速度,我需要将标志的“-x”参数替换为正确的语言,例如:“c”->“cpp-output”、“c++”->“c++-cpp-output”, ETC。 在这种情况下,clang 根本不会运行预处理。

关于c++ - 有没有办法用 clang 有效地编译已经预处理的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19207989/

相关文章:

c++ - 如何在 GMP 的 while 循环中获得不相等

c++ - 从模板特化中获取对类成员的访问

c++ - 为多个 QGraphicsItem 共享同一个 QGraphicsEffect

swift - 如何获取 JSON 格式的 Swift REPL 编译器错误

c++ - C++ 中两个 map 之间的同时并集和交集

c++ - 万花筒教程找不到 header `ExecutorProcessControl.h`

c++ - 如何使用模板库控制静态分析的编译器错误消息?

c - C语言中#pragma和_Pragma()的区别

C++ 预处理器/宏在函数定义后自动添加行

c++ - 遍历宏定义的函数