【问题标题】:How do I turn off the gcc preprocessor on linux?如何在 linux 上关闭 gcc 预处理器?
【发布时间】:2014-07-03 19:20:27
【问题描述】:

我已经用谷歌搜索turning off the gcc preprocessor on linux 有一段时间了(使用那个确切的短语),一切都无关紧要。例如,我想关闭所有除了预处理器(与我想要的相反)或加压警告。有谁知道禁用预处理器的方法?我发现 Facebook 开发并声称的速度更快,我想测试一下。

【问题讨论】:

  • 我相信如果源已经被预处理,预处理器将成为空操作,但我可能弄错了。
  • 将您的较新/其他预处理器命名为cpp 并将其放在您的路径中?或将原来的 cpp 重命名为 cpp-other,然后也将你的命名为 cpp。基本上只是在正常的工具链中替换它。那是你的终极目标,不是吗?用另一个替换 cpp?
  • 好的。谢谢你的回答!

标签: c++ linux gcc c-preprocessor


【解决方案1】:

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

例子:

$猫t.i int printf(const char *f, ...); 诠释主要(){ printf("你好世界\n"); } $ gcc t.i && ./a.out 你好世界

【讨论】:

  • 固体。我试图在我的回答中解释类似的事情,但这个版本更好。
【解决方案2】:

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

将其他/较新的预处理器命名为“cpp”并将其放在您的路径中,并将原始 cpp 重命名为 cpp-other 或 cpp-orig。考虑到您无论如何都试图替换 cpp,它会很好用。

【讨论】:

  • 那么,两年后(当晚)决定否决我的答案的人是否有某种反馈?
猜你喜欢
  • 2013-09-03
  • 1970-01-01
  • 2014-09-13
  • 2011-04-24
  • 2021-01-16
  • 1970-01-01
  • 2011-02-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多