gcc/g++ 命令的经常使用选项格式(选项 解释)

-o FILE 指定输出文件名称。在编译为目标代码时,这一选项不是必须的。假设FILE没有指定,缺省文件名称是a.out.

-c 仅仅编译生成目标文件,不链接

-m486 针对 486 进行代码优化。

-O0 不进行优化处理。

-O 或 -O1 优化生成代码。

-O2 进一步优化。

-O3 比 -O2 更进一步优化。包含 inline 函数。

-w 关闭全部警告,建议不要使用此项

-Wall 同意发出gcc能提供的全部实用的警告,也能够用-W(warning)来标记指定的警告

-werror 把全部警告转换为错误,以在警告发生时中止编译过程

-MM 输出一个make兼容的相关列表

-v 显示在编译过程的每一步中用到的命令

-E 仅仅执行 C 预编译器。

-shared 生成共享目标文件。通经常使用在建立共享库时。

-static 链接静态库,即运行静态链接

-lFOO 链接名为libFOO的函数库

-g 在可运行程序中包括标准调试信息

-ggdb 在可运行程序中包括仅仅有GNU debugger才干使别的达两条是信息

-O 优化编译过的代码

-ON 指定代码优化的级别为N,o<=N<=3

-ansi 支持ANSI/ISO C的标准语法,取消GNU的语法扩展中与该标准有冲突的部分(但这一选项并不能保证生成ANSI兼容的代码) 这一选项将禁止 GNU C 的某些特色。 比如 asm 或 typeof 关键词。

-pedantic 同意发出ANSI/ISO C标准所列出的全部警告

-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 宏的定义。

使用g++编译CPP文件假设用gcc编译C++源文件时。加下面选项:-lstdc++。否则使用了C++操作的文件编译会出错。

gcc/g++ 命令的经常使用选项的更多相关文章

  1. gcc/g++ 命令的常用选项

    gcc/g++ 命令的常用选项使用g++编译CPP文件如果用gcc编译C++源文件时,加以下选项:-lstdc++,否则使用了C++操作的文件编译会出错.假如在程序中用到new delete操作,而不 ...

  2. gcc/g++命令认识

    gcc & g++是gnu中最主要和最流行的c & c++编译器 . g++用来针对c++的处理命令,以.cpp为后缀,对于c语言后缀名一般为.c.这时候命令换做gcc即可. 下面以T ...

  3. gcc/g++ 命令

    gcc & g++现在是gnu中最主要和最流行的c & c++编译器 .g++是c++的命令,以.cpp为主,对于c语言后缀名一般为.c.这时候命令换做gcc即可.其实是无关紧要的.其 ...

  4. gcc/g++命令参数笔记

    1. gcc -E source_file.c -E,只执行到预编译.直接输出预编译结果. 2. gcc -S source_file.c -S,只执行到源代码到汇编代码的转换,输出汇编代码. 3. ...

  5. gcc/g++命令参数

    在windows环境下,我们运行一程序,只需要在VS中点击运行按键即可,VS帮我们做完了程序的预处理.编译.汇编.链接阶段 但是在linux环境下,我们只能借助gcc/g++完成这一系列的操作 -o参 ...

  6. gcc/g++多版本切换 (ubuntu18.04)

    使用Ubuntu18.04已经有一段时间了,在使用过程中经常需要处理不同软件的编译工作,但是这时候就遇到这样一个问题,那就是不同软件,甚至是同一个软件的不同版本都会使用不同版本的gcc/g++来进行编 ...

  7. windows 下 gcc/g++ 的安装(有图,一步一步)

    下载 mingw 首先打开 www.mingw.org .(注意版本,建议64bit) www.mingw.org 直接点击右上方的 Download Installer 即可下载. 点击 Downl ...

  8. GCC常用命令行一览表

    GCC常用命令行一览表 这些常用的 gcc/g++ 命令行参数,你都知道么?1. gcc -E source_file.c-E,只执行到预编译.直接输出预编译结果. 2. gcc -S source_ ...

  9. gcc/g++基本命令

    gcc & g++现在是gnu中最主要和最流行的c & c++编译器 .g++是c++的命令,以.cpp为主,对于c语言后缀名一般为.c.这时候命令换做gcc即可.其实是无关紧要的.其 ...

随机推荐

  1. 实用 .htaccess 用法大全【转载】

    转载:http://www.techug.com/htaccess-snippets 这里收集的是各种实用的 .htaccess 代码片段,你能想到的用法几乎全在这里. 免责声明: 虽然将这些代码片段 ...

  2. 提取URL的搜索字符串中的参数

    function urlArgs(){ var args = {}; var query = location.search.substring(1); if(query){ if(query.ind ...

  3. 2000W条数据,加入全文检索的总结

    一) 前期准备测试: 旧版的MySQL的全文索引只能用在MyISAM表格的char.varchar和text的字段上. 不过新版的MySQL5.6.24上InnoDB引擎也加入了全文索引,所以具体信息 ...

  4. C# 面向对象基础&封装&继承&多态&加深一下冒泡排序写法

    (一)面向对象是什么? 面向对象是一种编程思想 (二)为什么要用面向对象? 1.结构清晰 2.易于维护 3.方便扩展 (三)new一个对象是什么过程? 实例化构造函数创建对象的过程就是将类实例化的过程 ...

  5. 网页静态化技术Freemarker的详细介绍

    网页静态化技术Freemarker 一.Freemarker的基本介绍 1.1为什么要使用网页静态化技术 网页静态化解决方案在实际开发中运用比较多,例如新闻网站,门户网站中的新闻频道或者是文章类的频道 ...

  6. javascript 中parseInt 的用法

    <!DOCTYPE html> <html> <head lang="en">     <meta charset="UTF-8 ...

  7. CentOS卸载原有旧版OPENJDK并安装SUNJDK解决方案

    PS:由于图片是安装后进行截图所以出现的是1.8版本,步骤是完全正确的. 一.检测JDK 首先你要打开终端,为避免可能出现的权限问题建议直接su进入root.(PS:密码可以输入但不显示) 然后输入j ...

  8. 我是如何理解Android的Handler模型_3

    AsyncTask则相当于现代化的电话系统,接线员的功能被完全封装了. 对于上例,新建更新TextView的类并继承AsyncTack类,如下: class UpdataTV extends Asyn ...

  9. python 读取本地文件批量插入mysql

    Uin_phone.txt 本地文件内容 有1000条,这里只是展示前几条,供参考 133584752 133584759 133584764 133584773 133584775 13358477 ...

  10. Python For嵌套循环 图形打印X型 nested loop -练习题

    For嵌套循环图形打印作业很多是C++语言做的,我觉得Python应该也能做,就来试一试. 原网址C++练习题:http://www.imooc.com/qadetail/216848?t=33880 ...