文章来自:http://bbs.ickey.cn/group-topic-id-42164.html
作者:xidianzxc
GCC中的参数选项:
1. –g
在可执行程序中包含标准调试信息,用来使用调试工具调试
2. –o
指定输出文件
3. –l dir
在头文件的搜索路径列表中添加dir路径
4. –L dir
在库文件的搜索路径中添加dir路径
上篇帖子中遇见过的就是-o了,指定输出为指定名称的文件。
我们在调试程序的过程了,进场会面对很多的警告和错误。那么对于这些,gcc中有一些特定的参数选项,下面我们来介绍它们:
首先我们来编写一个测试程序warning.c,内容如下:
上述代码中,首先我们将上述程序的错误告诉大家:
1. 第一行中,gcc中main函数必须int来修饰,不能void
2. 第三行中,gcc不支持long long
3. 因为是void,但最后却return
还有一个警告信息:tmp变量定义了但是却没有使用。
我们来介绍编译中的这部分的参数:
1. –pedantic
这个参数的作用是:允许发出ANSI C标准所列的全部警告信息,我们来看一下效果:
上面列出了三个错误,但是却没有关于tmp的警告信息。
2. –Wall
这个参数的作用是:允许发出GCC提供的所有有用的警告信息,我们来看下效果:
上面提示的信息里,发现了tmp定义了未使用,但是却没发现long long这个错误。
从上所示,我们一般的做法是,将两个参数结合起来使用,我们来看下效果:
从上图可以看出,列出了,所有的警告信息和错误。
下面再来说说GCC的优化功能:
GCC代码优化是指通过编译过程中的参数选项来控制代码的生成,进而改善代码的执行性能。对于大程序来说,使用代码优化选项可以大幅度提高代码的运行速度。参数如下:
1. –O或者O1
告诉GCC同时减小代码的长度和执行时间
2. –O2
告诉GCC除了完成O1级别的优化之外,同时还要进行一些额外的调整工作,比如处理器指令调度
3. –O3
除上述两个外,继续展开和处理器相关的优化工作
但是,强调一点的是,代码优化对于调试程序而言是不利的,所以调试程序的时候,请不要使用任何的优化。当我们完成所有的调试工作之后,我们再来使用它。
作者:xidianzxc
GCC中的参数选项:
1. –g
在可执行程序中包含标准调试信息,用来使用调试工具调试
2. –o
指定输出文件
3. –l dir
在头文件的搜索路径列表中添加dir路径
4. –L dir
在库文件的搜索路径中添加dir路径
上篇帖子中遇见过的就是-o了,指定输出为指定名称的文件。
我们在调试程序的过程了,进场会面对很多的警告和错误。那么对于这些,gcc中有一些特定的参数选项,下面我们来介绍它们:
首先我们来编写一个测试程序warning.c,内容如下:
上述代码中,首先我们将上述程序的错误告诉大家:
1. 第一行中,gcc中main函数必须int来修饰,不能void
2. 第三行中,gcc不支持long long
3. 因为是void,但最后却return
还有一个警告信息:tmp变量定义了但是却没有使用。
我们来介绍编译中的这部分的参数:
1. –pedantic
这个参数的作用是:允许发出ANSI C标准所列的全部警告信息,我们来看一下效果:
上面列出了三个错误,但是却没有关于tmp的警告信息。
2. –Wall
这个参数的作用是:允许发出GCC提供的所有有用的警告信息,我们来看下效果:
上面提示的信息里,发现了tmp定义了未使用,但是却没发现long long这个错误。
从上所示,我们一般的做法是,将两个参数结合起来使用,我们来看下效果:
从上图可以看出,列出了,所有的警告信息和错误。
下面再来说说GCC的优化功能:
GCC代码优化是指通过编译过程中的参数选项来控制代码的生成,进而改善代码的执行性能。对于大程序来说,使用代码优化选项可以大幅度提高代码的运行速度。参数如下:
1. –O或者O1
告诉GCC同时减小代码的长度和执行时间
2. –O2
告诉GCC除了完成O1级别的优化之外,同时还要进行一些额外的调整工作,比如处理器指令调度
3. –O3
除上述两个外,继续展开和处理器相关的优化工作
但是,强调一点的是,代码优化对于调试程序而言是不利的,所以调试程序的时候,请不要使用任何的优化。当我们完成所有的调试工作之后,我们再来使用它。