我想重新编译我的项目的包含文件,其中包括一些头文件和.c源文件,这些文件是我的Ethetnet驱动程序的文件。现在我想在我的一个包含的源文件中进行一些更改。但是当我更改,构建或重建我的项目时,include .c源文件中的更改确实发生在最终输出二进制文件中。这意味着我的项目采用以前编译的.o文件。那么如何重新编译项目的所有包含文件,以便在最终输出二进制文件中进行更改。
提前致谢。
答案 0 :(得分:0)
CMIIW,但AFAIK取决于你的编译器(我猜是gcc),对包含文件的依赖性分析可能会完成与否,而在gcc情况下它不会这样做。它只将.c与其对应的.o进行比较,因此在更改包含文件时必须强制重建。您可以使用某些编译器选项,但我不知道。
编辑: 刚刚发现了一个类似的问题:How can I have a Makefile automatically rebuild source files that include a modified header file? (In C/C++)
答案 1 :(得分:0)
如果您确实包含了正确的文件(您修改过的文件,而不是某些其他目录中具有相同名称的文件),那么清理项目并重建它应该会有所帮助。只需在项目资源管理器中选择一个项目,右键单击,执行“清理项目”,然后构建它......