GCC常用命令-Vim

来源:互联网 发布:linux php 权限控制 编辑:程序博客网 时间:2024/05/23 11:21

GCC常用命令-Vim



GCC文件类型约定规则

文件后缀名

文件类型约定

.c

C语言源代码文件

.a

有目标文件构成的档案库文件

.C.cc.cxx

C++源代码文件

.h

程序所包含的头文件

.i

经预处理过的C源代码文件

.ii

经预处理过的C++源代码文件

.m

Objective-C源代码文件

.o

编译后的目标文件

.s

汇编语言源代码文件

.S

经过预编译的汇编语言源代码文件

GCC常用选项

选项

含义描述

-o filename

指定输出文件名,在编译为目标代码时,这一项不是必须的。为空,默认是a.out

-c

只编译不链接,生成目标文件“.o”

-S

只编译不汇编,生成汇编代码

-E

只进行编译,不做其他处理

-g

在生成的可执行程序中包含标准调试信息

-v

打印编译器内部编译各过程的命令行信息和编译器的版本号

-I dir

在头文件的搜索路径列表中添加dir目录

-L dir

在库文件的搜索路径列表中添加dir目录

-static

链接静态库

-library

链接名为library的库文件

-Dmacro

定义指定的宏,使它能够通过源码中的#ifdef进行验证

-O-O2-O3

将优化状态打开,该选项不能与-g选项联合使用

-Wall

在编译过程中把警告信息列出来

-Werror

在发生警告时取消编译操作,即将警告看作出错

-w

禁止所有的报警

-pedantic

严格要求符合ANSI标准

使用

若源文件为test.c

#gcc -o test.c test

#./test

1、预处理:#gcc -E test.c -o test.i

2、编译阶段:#gcc -S test.c -o test.s

3、汇编:#gcc -c test.c -o test.o

4、链接:#gcc test.o -o test

5、执行:#gcc ./test

1-4步可以一步执行:

#gcc test.c -o test

#./test

警告提示:#gcc -Wall test.c -o test

警告看成错误:#gcc -Werror test.c -o test

优化功能:#gcc -O2 test.c -o test

优化功能:#gcc -O3 test.c -o test

查看程序运行时间:#time ./test

链接头文件:#gcc test.c -I /home/anxier/include -o test

链接库:#gcc test.c -L /home/anxier/lib -ltest -o test,-l指示gcc去链接库文件libtest.so

使用静态库:#gcc test.c -L /home/anxier/lib -static -ltest -o test

同时编译多个源程序:#gcc test1.c test2.c test3.c -o test

使用管道来提高编译速度:#gcc -pipe -Wall test.c -o test

调试选项(-g/-ggdb):#gcc -g -o test.c test

0 0