文章目录
gcc的使用方法和选项
gcc的使用方法
gcc的常见选项
选项 | 含义 |
---|---|
-E | 只进行预处理,不编译 |
-S | 只编译,不汇编 |
-c | 只编译、汇编,不链接 |
-g | 包含调试信息 |
-o | 输出指定文件名 |
-L | 指定链接所需库(动态库或静态库)所在路径 |
-l(小写L) | 指定所需链接库的库名 |
-I(大写i) | 指定include包含文件的搜索目录 |
–static | 静态编译 |
-static | 静态链接 |
-Werror | 不区分警告和错误,遇到任何警告都停止编译 |
-Wall | 开启大部分警告提示 |
-ansi | ANSI标准 |
-std=c99 | C99标准 |
-O0 | 关闭所有优化选项 |
-O1 | 第一级别优化,使用此选项能使可执行文件更小、运行更快,并不会增加太多编译时间,可以简写为-O |
-O2 | 第二级别优化,采用几乎所有的优化技术,会延长编译时间 |
-O3 | 第三级别优化,在-O2的基础上增加了产生inline函数、使用寄存器等优化技术 |
-Os | 此选项类似于-O2,作用是优化所占用的空间,但不会进行性能优化,常用于生成最终版本 |
gcc的编译过程
1 #include <stdio.h>
2 #include <math.h>
3
4 int main( int argc, int argv[])
5 {
6 float a=3.1415;
7 float b=3.1415926;
8
9 if( fabs(a-b) < 0.0001)
10 {
11 printf("Equal\n");
12 }
13 else
14 {
15 printf("Not Equal\n");
16 }
17
18 return 0;
19 }
20