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

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++操作的文件编译会出错。

时间: 2024-10-13 21:47:48

gcc/g++ 命令的常用选项的相关文章

gcc编辑器的一些常用选项

gcc编辑器的一些常用选项 - -o:指定生成的文件名,未指定默认为a.out. - -g:编译后可以进行gdb调试. - -c:调试core文件(程序的内存映像文件,包含程序运行失败的那个时刻的全局变量). - -Wall:启用大部分gcc警告选项,对保持代码清洁很有用. - -pedatic:保持代码的可移植. - -D:用于命令行定义. - -DDEBUG:在程序中包含额外的调试代码. - -E:参数可以让gcc在预处理结束后停止编译过程. >注意:欢迎补充... 版权声明:本文为博主原创

gcc/g++ 命令行参数

这些常用的 gcc/g++ 命令行参数,你都知道么? 1. gcc -E source_file.c -E,只执行到预编译.直接输出预编译结果. 2. gcc -S source_file.c -S,只执行到源代码到汇编代码的转换,输出汇编代码. 3. gcc -c source_file.c -c,只执行到编译,输出目标文件. 4. gcc (-E/S/c/) source_file.c -o output_filename -o, 指定输出文件名,可以配合以上三种标签使用. -o 参数可以被

gcc/g++命令认识

gcc & g++是gnu中最主要和最流行的c & c++编译器 . g++用来针对c++的处理命令,以.cpp为后缀,对于c语言后缀名一般为.c.这时候命令换做gcc即可. 下面以Test.cpp为例: 命令: g++ Test.cpp 功能:生成默认为a的可执行文件,这个过程已经包含了编译和链接过程. 再说下-o命令,-o命令表示输出的意思,gcc/g++命令是非常灵活的,你不指定输出的文件名的时候默认生成的是可执行文件. 你要输出Test的可执行程序的话可以用:g++ -o Test

mysqldump命令之常用选项

===============================================mysqldump常用选项-h, --host=name:服务器IP-u, --user=name:登录名-p, --password[=name]:登录密码-A, --all-databases:导出所有数据库-B, --databases:导出指定的数据库,多个数据库名使用空格分割--tables:导出指定表-d, --no-data:仅导出表结构,不导出数据-t, --no-create-info

gcc/g++命令

参考:http://www.cnblogs.com/cryinstall/archive/2011/09/27/2280824.html 注意:gcc和g++是linux系统下的编程常用指令,C语言文件用gcc,cpp文件用g++. 1.预处理  g++ -E filename.cpp > filename.i 功能:输出预处理后的文件,linux下以.i为后缀名.只激活预处理,这个不生成文件,你需要把它重定向到一个输出文件里 . 这一步主要做了这些事情:宏的替换,还有注释的消除,还有找到相关的

Linux学习笔记——用户、组管理命令及常用选项

用户管理命令: useradd  userdel usermod passwd  id finger chsh  chfn chmod chown  su 组管理命令: groupadd groupdel groupmod gpasswd   chgrp 用户类型分为:用户u:owner.组g:group.其他o:other   三种类型 文件权限包含:r  w  x  执行权限 文件与目录之间关于rwx 权限的区别 : 文件: r :可读  ,可以使用cat 等命令查看 w : 可写  ,可以

grep命令的常用选项

Linux的grep命令是使用正则表达式进行文本搜索的,一些对程序员很有用的选项如下: -i   忽略大小写 -w  进行普通文件匹配,而不是正则表达式匹配 -c  只统计每个文件中匹配行数(默认是输出匹配行) -n  输出匹配行的时候,文件名后面带上行号 -I  不要搜索二进制文件 -l  只打印匹配的文件名 -L  只打印不匹配的文件名 -v  输出不匹配的行

Linux学习笔记——目录、文件管理命令及常用选项

目录管理命令: ls . cd . pwd  .mkdir. rmdir .tree 文件管理命令: touch. stat .file. rm .cp. mv .nan 目录管理 #ls  列出列表 格式ls [OPTION]... [FILE]... -h (hurman)单位转换 -a (all)显示以.开头的文件 (显示隐藏文件) .当前目录 ..表示父目录 -A  不显示当前目录. 和父目录.. ,其他全部显示 -d (diectory)显示目录属性 -i  (id)  显示i节点号

GCC G++ 的区别

gcc 是c的编译器,g++是c++的编译器.cc一般是一个符号连接,指向gcc. CC一般是makefile里面的一个名字,具体是什么根据实际情况决定. gcc和g++都是GNU(组织)的一个编译器. 误区一:gcc只能编译c代码,g++只能编译c++代码 两者都可以,但是请注意: 1,后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序:后缀为.cpp的,两者都会认为是c++程序,注意,虽然c++是c的超集,但是两者对语法的要求是有区别的.C++的语法规则更加严谨一些. 2,编译阶