0

我想重新编译我的项目的包含文件,其中包括一些头文件和 .c 源文件,它们是我的 Ethetnet 驱动程序的文件。现在我想对我包含的源文件之一进行一些更改。但是当我更改并构建或重建我的项目时,包含 .c 源文件中的更改确实发生在最终输出二进制文件中。这意味着我的项目采用以前编译的包含 .o 文件。那么如何重新编译项目的所有包含文件,以便在最终输出二进制文件中发生更改。

提前致谢。

4

2 回答 2

0

CMIIW 但 AFAIK 它取决于您的编译器(我猜是 gcc),对包含文件的依赖分析可能会完成,也可能不会,在 gcc 的情况下它不会这样做。它仅将 .c 与其对应的 .o 进行比较,因此您必须在更改包含文件时强制重新构建。也许您可以使用某些编译器选项,但我不知道。

编辑:刚刚发现了一个类似的问题:如何让 Makefile 自动重建包含修改后的头文件的源文件?(在 C/C++ 中)

于 2012-04-20T06:37:13.613 回答
0

如果您确实包含了正确的文件(您已修改的文件,而不是来自其他目录的同名文件),那么清理项目并重建它应该会有所帮助。只需在项目资源管理器中选择一个项目,右键单击,执行“清理项目”,然后构建它...

于 2012-04-20T06:41:08.427 回答