#includeintmain(intargc,char*argv[]){#ifdefDEBUGprintf("DEBUG is definded \n");#elseprintf("DEBUG is not definded \n");#endif} 2. Makefile文件为: DEBUG= CFLAG= -g debug: DEBUG.c gcc $(DEBUG) $(CFLAG) -o$@$^ 3. 输入:gcc -g -o debugtest.c ./debug out: DEBUG is not ...
3. 输入: gcc -g -o debug test .c ./debug out: DEBUG is not definded 4. 输入: gcc -DDEBUG -g -o debug test .c ./debug out: DEBUG is definded 这样DEBUG版本和 release版本都有了. GCC生成32位版与64位版、debug版与release版 本文介绍了如何利用makefile条件编译来生成(64/32bit、debug...
此选项传递option给汇编程序;如果option中间有逗号,就将option分成多个选项,然后传递给会汇编程序 -Wl.option 此选项传递option给连接程序;如果option中间有逗号,就将option分成多个选项,然后传递给会连接程序. -llibrary 制定编译的时候使用的库 例子用法 gcc -lcurses hello.c 使用ncurses库编译程序 -Ldir 制定编译的...
必须在-O3选项下才开启'-fearly-inlining' 加速编译 默认可用'-finline-limit=N' gcc默认限制内联函数的大小,使用该选项可以控制内联函数的大小;默认值是600,可以设置如下几个值: max-inline-insns-single N/2 max-inline-insns-auto N/2 min-inline-insns 130 or N/4 max-inline-insns-rtl N '-fkeep...
1.使用gcc编译器编译debug版本: 在命令行中输入: $ gcc -g -o 其中,-g参数表示生成包含调试信息的可执行文件,-o表示设置输出文件的文件名,表示要编译的源文件。 2.使用gdb调试debug版本: 在命令行中输入: $ gdb <executable> 此命令会进入GDB调试环境,<executable>表示上一步生成的可执行文件。然后,我们...
GCC编译选项 1.指定输出可执行文件的名字 使用最基本的gcc编译格式 gcc main.c 执行完上面这句命令,会在当前目录下输出一个名为a.out的可执行文件。 使用-o选项可以指定输出的可执行文件名称。 gcc main.c -o main 执行完上面语句会在当前目录下输出一个名为main的可执行文件。
在开启编译优化的开关时,GCC编译器的目的是:优化程序的性能和减少代码的大小,尽管会以牺牲编译时间和程序的可调试能力为代价。 对于不同的优化级别开启的对应优化开关可以通过gcc -Q -O2 --help=optimizers来查看对应的开启优化列表。 1. GCC优化选项 -O0默认的优化选项,减少编译时间和生成完整的调试信息。 -O/...
常用编译选项 GCc and g++分别是gnu的c & c++编译器 GCc/g++在执行编译工作的时候,总共需要4步 1.预处理,生成.i的文件[预处理器cpp] 2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器eGCs] 3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as] ...
/GZ 启用运行时调试检查 enable runtime debug checks /Gh 启用钩子函数调用 enable hook function call /Ge 对所有函数强制堆栈检查 force stack checking for all funcs /Gs[num] 禁用堆栈检查调用 disable stack checking calls -输出文件- /Fa[file] 命名程序集列表文件 name assembly listing file ...
-O打开优化选项: -O0 (默认)减少编译时间,⽣成 debug 级别的结果; -O1/O2/O3 优化级别逐级上升,⼀般 release 版本的优化等级都会采⽤ O2 级别;gcc -c test.c -O2 -o test -g ⽣成当前系统本地格式化的调试信息, GDB 可识别并调试; -ggdb 专门为 gdb ⽣成调试信息;gcc...