gcc 常用 参数

转载 2015年11月18日 18:13:24

1、gcc -Wall hello.c -o hello //编译源文件,显示警告信息

2、./a.out   //运行程序

3、gcc -Wall calc.c /usr/lib/libm.a -o calc //绝对路径包含库

4、gcc -Wall calc.c -lm -o calc //使用参数包含库

5、Gcc默认搜索库文件的目录:/usr/local/lib/  ; /usr/lib/

6、Gcc默认搜索头文件的目录:/usr/local/include/ ;  /usr/include/

7、Gcc -I-L参数:前者将路径加到搜索包含头文件的搜索路径列表;后者

   将路径加到搜索包含库文件的搜索路径列表。

8、 C_INCLUDE_PATH 添加c语言头文件的搜索路径的变量

9、 CPP_INCLUDE_PATH 添加c++语言头文件的搜索路径的变量

10、LIBRARY_PATH 添加库文件的搜索路径的变量

11、LD_LIBRARY_PATH 添加动态共享库的搜索路径的变量

12、添加变量后要使用命令 “export 变量名”导出变量

13、Gcc-D选项可以在命令行中添加宏定义

14、Gcc -E test.c 预处理源文件,结果在标准输出上显示,不保存到文件

15、Gcc -c -save-temps hello.c 将生成目标文件过程中所用到的所有临时文件保存

16、-g选项使得gcc带调试信息编译,可以用在gdb的调试中

17、优化级别:源代码级的优化(公共子表达式消除和函数内嵌)、速度-空间折中的优化(循 环展开)和指令级的优化(指令重调度)

18、“-O0”默认级别,没有任何优化,以程序的自然方式编译,适用于调试

-O1-O”,只有源代码级的优化,程序速度和大小都有优化;

-O2”,在不增加可执行文件大小前提下进一步优化,采用了指令级别优化,但没有 折中优化,适用于软件发行包;

-O3”适用了折中优化的进一步优化,文件可能会增大,但有时优化反倒使程序变慢。

-funroll-loops”打开循环展开

-Os”缩减可执行文件大小的优化

调试时用“-O0”,开发部署时用“-O2”就足够了

19、time ./a.out 测试程序的运行时间

 

20、编译c/c++程序都可以适用gcc,链接c++程序要使用g++;链接c++程序也可以适用gcc, 方法如下:gcc -Wall [-static//静态链接库文件选项] hello.cpp -lstdc++

21、ar库文件打包工具:

ar cr libhello.a hello_fn.o bye_fn.o // cr "create and replace"

如果libhello.o不存在,就创建它,存在就更新它

ar 的命令选项不需要在选项前加“-

ar t libhello.a 列出库文件含有的目标文件

ar d libhello.a test.o 删除libhello.a中的库文件test.o

当前目录为test,其中有一个源文件main.c和一个文件夹mylibmylib中有两个文件夹,

Include和一个libinclude中有hello.hbye.hlib中有libmyfun.a库打包文件。以下 命令是利用这些文件的方法。

gcc -Wall main.c -o test -I mylib/include -L mylib/lib -lmyfun

22、gprof工具的使用:

Gcc -Wall -c -pg test.c

Gcc -Wall -pg test.o

./a.out

Gprof a.out

编译和链接过程中都要使用-pg选项

要先运行一次程序才能运行gprof

23、gcov工具使用:

Gcc -Wall -fprofile-arcs -ftest-coverage test.c

./a.out

Gcov test.c //使用的是源文件

覆盖测试必需加以上两个选项

编译后必需运行一下程序才能使用gcov程序。

24、file命令查看文件属性

25、Nm查看二进制文件符号表

26、Ldd查看可执行文件依赖的共享库

27、预处理:cpp

28、编译: gcc

29、汇编: as

30、链接: ld

31、Gcc选项 -E(预处理)-S(汇编)

gcc 编译器常用的命令行参数一览

gcc是一个非常实用的Linux编译器,在实际使用中会经常用到。 1. gcc -E source_file.c -E,只执行到预编译。直接输出预编译结果。 2. gcc -S source...
  • k_wang_
  • k_wang_
  • 2015年12月26日 16:08
  • 2190

GCC常用参数详解

原文链接:http://www.cnblogs.com/zhangsir6/articles/2956798.html 简介 gcc and g++现在是gnu中最主要和最流行的c & c++...
  • TstsUgeg
  • TstsUgeg
  • 2017年04月21日 09:53
  • 292

GCC 参数详解

[介绍]  gcc and g++分别是gnu的c & c++编译器 gcc/g++在执行编译工作的时候,总共需要4步  1.预处理,生成.i的文件[预处理器cpp]  2.将预处理后的文件...
  • zzxian
  • zzxian
  • 2013年11月20日 21:57
  • 1539

gcc编译器常用选项的含义

gcc(GNU Compiler Collection)是GNU项目中符合ANSI C标准的编译系统,能够编译用C、C++、Object C、Jave等多种语言编写的程序。gcc又可以作为交叉编译工具...
  • arackethis
  • arackethis
  • 2015年02月01日 10:59
  • 1347

GCC常用参数解释

gcc在命令行上经常使用的几个选项是: -ansi 表示除了ANSI C标准之外其他特性都认为语法错。比如//单行注释。需要注意的是,这个选项只是严格执行大部分ansi标准。 -std= 后面可以...
  • friendbkf
  • friendbkf
  • 2015年05月10日 14:18
  • 805

GCC常用编译选项

-g   只是编译器,在编译的时候,产生调试信息 -C   在预处理的时候,不删除注释信息,一般和-E使用,有时候分析程序,用这个很方便的    -M  生成文件关联的信息。包含目标文件所依赖的所有源...
  • wangzhen209
  • wangzhen209
  • 2015年07月30日 17:12
  • 6095

gcc常用命令选项

gcc这条命令用来将源代码生成可执行程序,下面来看一下gcc的常用选项。  1、无选项编译链接  例:命令:gcc test.c //会默认生成a.out可执行程序  2、-E: 进行预处理和编...
  • Crazy_Tengt
  • Crazy_Tengt
  • 2017年05月11日 22:46
  • 215

GCC和G++常用参数

一、gcc 编译流程 1.预处理-Pre-Processing gcc  -E  test.c  -o  test.i // .i文件   2.编译-Compiling gcc  -S  t...
  • cay22
  • cay22
  • 2014年07月25日 16:19
  • 534

gcc常用编译选项 汇总

目录(?)[+]GCC编译器常用选项-E:只进行预处理,不编译 -S:只编译,不汇编 -c:只编译、汇编,不链接 -g:包含调试信息 -I:指定include包含文件的搜索目录 -o:输出成...
  • lee244868149
  • lee244868149
  • 2014年08月22日 11:42
  • 2864

GCC/G++编译参数含义

转自:http://blog.csdn.net/zhuxiaoyang2000/article/details/5575194 GNU CC(简称gcc)是GNU项目中符合ANSI C标准的编译...
  • yasi_xi
  • yasi_xi
  • 2014年01月20日 12:52
  • 8114
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:gcc 常用 参数
举报原因:
原因补充:

(最多只允许输入30个字)