gcc 时有关调试信息:-g3(调试信息)/-O0(编译优化)/-s(裁剪执行程序信息) -g /-gdb/-g3 编译调试信息 “-o”是指目标文件 gcc 编译选项 -s 可以裁剪执行程序的信息,删除可执行文件中所有符号表和重新定位信息,以压缩可执行文件,导致gdb调试无效,使用命令 file excfilename可以看到有strip 一、gcc -s...
GCC -O选项 这个选项控制所有的优化等级。使用优化选项会使编译过程耗费更多的时间,并且占用更多的内存,尤其是在提高优化等级的时候。 -O设置一共有五种:-O0、-O1、-O2、-O3和-Os。你只能在/etc/make.conf里面设置其中的一种。 除了-O0以外,每一个-O设置都会多启用几个选项,请查阅gcc手册的优化选项章节,...
-o 指定输出文件,如果没有使用 -o 选项,默认的输出结果是:可执行文件为 a.out 调试选项(DEBUGGING OPTION) 选项解释 -g 以操作系统的本地格式(stabs, COFF, XCOFF,或DWARF),产生调试信息,GDB能够使用这些调试信息 -glevel 请求生成调试信息,同时用level指出需要多少信息,默认的level值是2; level1: 输出最少...
编译First.cpp 生产一个 名字为First.exe的文件 生成.o文件 g++ -O0 -g3 -Wall -c -fmessage-length=0 -oFirst.o First.cpp gcc -c xxx.c -o xxx.o //编译成OBJ 生成dll gcc -shared xxx.c -o xxx.dll //编译成DLL, 注意, Cygwin-GCC默认导出所有的Function. ar r xxx.lib xxx1.o xxx2...
-g:产生符号调试工具(GNU的 gdb)所必要的符号信息。想要对源代码进行调试,就必须加入这个选项。 -O:对程序进行优化编译、链接。采用这个选项,整个源代码会在编译、链接过程中进行优化处理,这样产生的可执行文件的执行效率可以提高,但是编译、链接的速度就相应地要慢一些,而且对执行文件的调试会产生一定的影响,造成一...
-O0-O1-O2-O3编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高-g只是编译器,在编译的时候,产生调试信息。-gstabs此选项以stabs格式声称调试信息,但是不包括gdb调试信息.-gstabs+此选项以stabs格式声称调试信息,并且包含仅供gdb使用的额外调试信息.-ggdb此选项将尽可能的生成gdb的可以...
对于gcc来说,这通常意味着-g对-O的某些版本。现在,我看到了这样一种情况:优化的构建是用-O3构建的,而调试版本是用-g3和-O3构建的。mangcc确实表明这是可能的,但对于实际调试而言,这似乎与我的直觉相悖。回顾使我想起了-Og,它允许不干扰调试的优化。这对我来说是有意义的,但是,除非您基本上尝试调试...
gcc -I /home/inc/ -O2 -g3 main.c test.o -o main 1. 2. 3. 4. 5. 二、make操作 make 的基本格式为: make -[选项] [文件名] 例如: make -v make -n make -C /home/erc/ -f Makefile02 -s 1. 2. 3. 4. 5. 6.
#define NRF_LOG_BACKEND_UART_ENABLED 0 #endif 2.2 初始化RTT打印功能 在主函数main中,第一步就是初始化打印日志功能 log_init()。 int main(void) { // Initialize. log_init(); log_init()函数 static void log_init(void) { ret_code_t err_code = NRF_LOG_INIT(NULL); ...
调试选项对生成代码大小的影响从下面的对比过程中可以看出来: # gcc optimize.c -o optimize# ls optimize -l-rwxrwxr-x 1 xiaowp xiaowp 11649 Nov 20 08:53 optimize (未加调试选项)# gcc -g optimize.c -o optimize# ls optimize -l-rwxrwxr-x 1 xiaowp xiaowp 15889 Nov 20 08:54 optimize (...