大家好:
如果 在Makefile中添加“CFLAGS+=-D SD_TEST”,则在编译代码时遇到问题。
我的.C文件中的代码:
#ifdef SD_test
test1();
#否则
teset2();
#endif
运行结果:
当我在Makefile中添加CFLAGS+=-D SD_TEST,然后在不更改其他代码的情况下编译这个. c文件时,gcc将不会编译这个. C文件。
程序仍将运行test2()而不是test1()。 否则,当我清理整个项目,然后再次编译该项目时,它将运行test1。
我希望实现的目标:
1.不要使用清洁器,因为它需要很长的时间;
2.在makefile中添加CFLAGS+=-D SD_TEST时,程序将运行test1(),如果注释掉CFLAGS+=-D SD_TEST,,则运行test2()
顺便说一下,如果 我在CCS中添加了一个“预定义符号”,然后编译代码, 我发现每个. c文件都将被编译。 当我删除“预定义符号” 并且不更改其他代码时,CCS仍将编译所有.c文件。 那么,“CCS生成”和普通makefile之间有什么区别?