在Makefile中我们可以通过宏定义来控制源程序的编译。只要在Makefile中的CFLAGS中通过选项-D来指定你于定义的宏即可。 如: CFLAGS += -D _YUQIANG 在编译的时候加上此选项就可以了: $(CC) $(CFLAGS) $^ -o $@ DEFINES += -D BVS_DIRECTION=$(BVS_DIRECTION) \-D BVS_LAYOUT=$(BVS_LAYOUT) \-D $...
2、testD.c文件,如下 #include<stdio.h>int main() { printf("Makefle_D = %d\n", Makefle_D); } 3、改动-DMakefle_D=2为-DMakefle_D=3或者-DMakefle_D=4,编译测试 发现改动后,testD.c并不会重新编译。所以在Makefile里面改宏定义,记得要clean...
-D 表示设置宏定义,-DDEBUG表示编译debug版本,-DNDEBUG表示编译release版本 -O 表示编译时候的优化级别,有4个级别-O0,-O1,-O2 -O3,-O0表示不优化,-O3表示最高优化级别 -shared 表示生成动态库 -L 指定库路径,如-L.表示库路径为当前目录 -l (小写L)指定库名,如-lc表示引用libc.so 新装的ubuntu可能没...
【3】宏定义 开发过程,特殊代码一般增加宏条件来选择是否编译,如调试打印输出代码。-D是标识,后面接着的是“宏”。 DEBUG =-DUSE_DEBUG 【4】编译选项 可以指定编译条件,如显示警告(-Wall),优化等级(-O) CFLAGS =-Wall -O 【5】源文件 指定源文件目的路径,利用“wildcard”获取路径下所有依赖源文件。 SOUR...
主要是Makefile中-DXXX_X__的作⽤。在gcc编译器中, -E是宏替换阶段。同时⼜制定了-D参数时,会将-D 参数后的字符串最为宏名定义在指定的⽂件。例如:-DXXX_X__ <===> -D XXX_X__ <===> #define XXX_X__ 1 -D XXX_X__=strings < === > -DXXX_X__=strings <===> #defi...
-D name预先定义一个宏定义,比如 –DMPC564xB 表示定义一个宏 MPC564xB 8、makefile举例 本工程的代码结构如下图所示: 其中Asm_Files里面放置的是.S汇编文件,bin里面放置的是编译后的elf、S19、.map、.o等文件,include里面放置的为头文件,Linker_Files里面放置的是.ld内存分配文件、make里面放置的是bat脚本和...
gcc -DDEBUG -o ttt a.c b.c gcc -o ttt a.c b.c gcc -UDEBUG -o ttt a.c b.c 是取消宏定义 2, GNU Make make是负责从项目的源代码中生成最终可执行文件和其他非源代码文件的工具。 make命令本身可带有四种参数:标志、宏定义、描述文件名和目标文件名。
-D是宏定义 若代码里出现 ifdef _BSD_SOURCE ...endif 样子的代码时,如果不加上 -D_BSD_SOURCE的话,那这段代码是不会编译的.C语言里的宏是很好玩,很强大的一个东东...