【问题标题】:How to generate pre-processed C code [duplicate]如何生成预处理的C代码[重复]
【发布时间】:2012-12-11 12:43:06
【问题描述】:

可能重复:
C/C++ source file after preprocessing

我希望为应用程序(在本例中为 apache)生成所有预处理的 c 代码。我下载了 Apache 的源代码,并一直在运行以下命令“gcc -c -save-temps *.c”并尝试了 /.c。运行这些命令中的任何一个时,我都会收到很多错误,其中包括:

server/core.c:17:17: fatal error: apr.h: No such file or directory
compilation terminated.
server/core_filters.c:22:17: fatal error: apr.h: No such file or directory
compilation terminated.
server/eoc_bucket.c:17:19: fatal error: httpd.h: No such file or directory
compilation terminated.

我相当肯定该程序应该可以正确编译,因为它直接来自 Apache 网站。为了生成必要的预处理 c 代码,我应该做什么。我应该以某种方式使用makefile吗?

我正在尝试分析需要预处理c代码的源代码的应用程序可以找到here

感谢大家的帮助。

【问题讨论】:

  • gcc -c 不会生成预处理的源代码,而是会发出目标代码。
  • 谢谢。那我应该使用什么命令?
  • gcc -E 是你要找的。​​span>
  • @H2CO3:你应该回答这个问题,因为这就是它的全部内容。
  • @IlmariKaronen 也许,但这并不能解决缺少标题的问题。

标签: c c-preprocessor


【解决方案1】:

(所以,只是通过重复重复我的其他人来重复我自己......)

gcc -c 生成目标代码。如果要调用预处理器,请使用gcc -E

【讨论】:

  • 这似乎行得通,我绝对可以给予信任。
  • 对于生成的“预处理器文件”,如果我想引用所有子目录中的每个人,我该怎么做?现在,我正在尝试:
  • 另外,对于 gcc-E 选项,我遇到了很多编译问题。有没有办法我应该通过makefile或其他东西运行这个命令?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-17
  • 2018-01-03
  • 2022-01-21
  • 1970-01-01
相关资源
最近更新 更多