【发布时间】:2011-04-19 01:29:21
【问题描述】:
当使用 gcc 编译时,我们可以使用选项 -E 查看预处理的源文件。我们如何将其应用于内核模块的 Makefile(外部编译)。源文件包含很多#ifdef #else #endif,有没有办法快速检查编译文件中实际包含的代码部分。任何建议表示赞赏。提前致谢。
【问题讨论】:
-
您可以尝试将
CFLAGS=-E添加到您的make调用中吗? -
你是对的。当我将
CFLAGS=-E添加到Makefile时,它没有生成目标文件,而是生成了预处理的源文件。非常感谢萨诺德 -
请注意,如果您的模块是从多个源文件编译的,您可能还必须在 Makefile 中将输出文件从 .o 更改为 .i。否则,您可能会从 Make 脚本中收到无法识别的格式错误。如果有更好的解决方法就好了。
标签: linux gcc device-driver