Linux学习之g++编译命令
来源:互联网 发布:近反义词查询软件 编辑:程序博客网 时间:2024/05/14 08:41
有关gcc和g++的区别我就不赘述了,我个人更喜欢用g++来编译链接c++程序,因为它检查规则更严格。
[介绍]
gcc and g++分别是gnu的c & c++编译器 gcc/g++在执行编译工作的时候,总共需要4步
1.预处理,生成.i的文件[预处理器cpp]
2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs]
3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as]
4.连接目标代码,生成可执行程序[链接器ld]
[命令]
格式(选项 && 解释 )
linux gcc常用命令集合:
-o FILE && 指定输出文件名,在编译为目标代码时,这一选项不是必须的。如果FILE没有指定,缺省文件名是a.out.
-o FILE && 指定输出文件名,在编译为目标代码时,这一选项不是必须的。如果FILE没有指定,缺省文件名是a.out.
-c && 只编译生成目标文件,不链接
-g && 在可执行程序中包含标准调试信息
-g && 在可执行程序中包含标准调试信息
-m486 && 针对 486 进行代码优化。
-O0 && 不进行优化处理。
-O 或 -O1 && 优化生成代码。
-O2 && 进一步优化。
-O3 比 -O2 && 更进一步优化,包括 inline 函数。
-w && 关闭所有警告,建议不要使用此项
-Wall && 允许发出gcc能提供的所有有用的警告,也可以用-W(warning)来标记指定的警告
-werror && 把所有警告转换为错误,以在警告发生时中止编译过程
-MM && 输出一个make兼容的相关列表
-v && 显示在编译过程的每一步中用到的命令
-E && 只运行 C 预编译器。
-shared && 生成共享目标文件。通常用在建立共享库时。
-static && 链接静态库,即执行静态链接
-lFOO && 链接名为libFOO的函数库
-ggdb && 在可执行程序中包含只有GNU debugger才能使别的达两条是信息
-O && 优化编译过的代码
-ON && 指定代码优化的级别为N,o<=N<=3
-ansi && 支持ANSI/ISO C的标准语法,取消GNU的语法扩展中与该标准有冲突的部分(但这一选项并不能保证生成ANSI兼容的代码) 这一选项将禁止 GNU C 的某些特色, 例如 asm 或 typeof 关键词。
-pedantic && 允许发出ANSI/ISO C标准所列出的所有警告
-pedantic -errors && 允许发出ANSI/ISO C标准所列出的所有错误
-traditional && 支持Kernighan & Ritchie C语法(如用旧式语法定义函数);如果不知道这个选项的含义,也没有关系
-IDIRECTORY && 指定额外的头文件搜索路径DIRECTORY。
-LDIRECTORY && 指定额外的函数库搜索路径DIRECTORY。
-DFOO=BAR && 在命令行定义预处理宏FOO,其值为BAR
-IDIRNAME && 将DIRNAME加入到头文件的搜索目录列表中
-LDIRNAME && 将DIRNAME加入到库文件的搜索目录列表中,缺省情况下gcc 只链接共享库
-DMACRO && 以字符串“1”定义 MACRO 宏。
-DMACRO=DEFN && 以字符串“DEFN”定义 MACRO 宏。
-UMACRO && 取消对 MACRO 宏的定义。
0 0
- Linux学习之g++编译命令
- 学习linux之 gcc/g++常用的命令行编译指令
- linux内核学习之编译命令
- linux gcc g++编译命令选项
- linux gcc g++编译命令选项
- g++编译命令选项
- g++编译命令选项
- Linux g++ 编译工程
- linux学习之二---gcc与g++
- g++ 使用C++编译命令
- g++编译连接命令简介
- g++ 编译hook文件命令
- Linux之gcc(g++)多文件编译问题
- linux 学习之路----编译
- Linux学习之基础命令
- 学习Linux命令之每日
- Linux学习之touch命令
- linux命令学习之ls
- EJB学习
- failed (104: Connection reset by peer) while reading response header from upstream, client: x.x.x.x
- 2017网易有道校园招聘笔试题
- 把DataTable添加到DataSet中
- String解析——String s=new String("a");String s = "a" + "b";String的intern方法等问题
- Linux学习之g++编译命令
- Tsung在Linux下安装使用等
- MAMP PRO for mac 4.1.1 破解版
- 阻止网络机器人爬取网站内容
- Java运算符
- 最详细的 TabLayout 的用法
- 马虎算式
- 素数判定
- Count the string