如何在linux上关闭gcc预处理器?

How do I turn off the gcc preprocessor on linux?

本文关键字:gcc 预处理 处理器 linux      更新时间:2023-10-16

我在谷歌上搜索了"关闭linux上的gcc预处理器";很长一段时间以来(用这个确切的短语),一切都变得无关紧要了。例如,我想关闭所有,除了预处理器(与我想要的相反)或加压警告。有人知道禁用预处理器的方法吗?我发现了一个Facebook开发的,并声称速度更快,我想测试一下。

将你的文件命名为program.i而不是program.c,它将被GCC/Clang视为已经预处理并直接发送给编译器。

的例子:<>之前$ cat .iInt printf(const char *f,…);int main () {printf (" hello world n");}$ GCC t.i && ./a.out你好世界

我最近找到了一个解决标题中所描述的问题的方法(不管最终目标是什么),它似乎比更改源文件的扩展名更清晰,所以我记录了它,希望有人会发现它有用:告诉GCC源文件已经被预处理,

gcc -x cpp-output -o hello hello.c

我测试了lornix在评论中所说的内容,并且它有效:

将另一个/较新的预处理器命名为"cpp",并将其放在您的路径中,并将原始cpp重命名为cpp-other或cpp- origin。考虑到你正试图取代cpp,它会很好地工作。