gcc 的参数 -Wall -O2 -ansi -Wall 生成所有警告信息 -o test (小写字母o)是说输出为test -ansi 是使用c++98标准去编译代码。 关闭gnu c中与ansi c不兼容的特性,激活ansi c的专有特性(包括禁止一些asm inline typeof关键字,以及UNIX,vax等预处理宏) -O0 (大写字母O) -O1 -O2 -O3 编译器的优化选项...
unused-parameter: 从未用过的函数参数的警告。 unused-variable: 在本地声明但从未用过的变量的警告。 unused-value: 经计算但从未用过的值得警告。 return-type: 对函数返回类型不当的警告。 uninitialized:在初始化之前就使用自动变量。 float-equal:比较两个浮点数是否相等。 -Wall给出“几乎”所有的编译器警告...
$gcc -Wall -static hello.c -lNAME -o hello 它等价于: $gcc -Wall hello.c libNAME.a -o hello $ gcc-2.95 -Wall sqrt.c -static -lm -o sqrt_2.95_static $ gcc-2.95 -Wall sqrt.c -lm -o sqrt_2.95_default $ gcc-2.95 -Wall sqrt.c /usr/lib/libm.a -o sqrt_2.95_a $ gcc-2.9...
gc参数设置 java gcc 函数默认参数 -w -W -Wall -w 关闭编译警告。平时编写c/c++代码如果不规范,编译的时候会抛出很多警告。但是一般的警告都是可以忽略的,比如类型转换。编译的时候可以加-w关闭警告 -W 也是关闭编译警告,但是比-w智能一些,它只会显示编辑器认为会出错的警告 -Wall, 显示所有警告。 比如下面...
-l参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文 件名有什么关系呢? 就拿数学库来说,他的库名是m,他的库文件名是libm.so,很容易看出,把库文件名的 头lib和尾.so去掉就是库名了。 好了现在我们知道怎么得到库名了,比如我们自已要用到一个第三方提供的库名字叫lib ...
5) -Wall :允许发出gcc提供的所有有用的报警信息 6) -werror :把所有的告警信息转化为错误信息,并在告警发生时终止编译过程3、gcc优化选项 1)-On:n的取值范围不一致,比较典型的范围为0变化到2或者3。 虽然优化选项可以加速代码的运行速度,但对于调试而言将是一个很大的挑战。因为代码在经过优化之后,原先在源...
二.GCC参数祥解 -x language filename 设定文件使用的语言,这样源程序的后缀名无效了,并对gcc后接的多个编译文件都有效。这样如 果存在.c和.cpp文件联编会有问题,解决这个问题用到了下一个参数 -x none filename,在下面做介绍。因为在预处理过程中对于.c和.cpp文件的处理方式是不一样的。可以使用的参数有:'...
gcc编译常用参数 -I 指定头文件所在目录位置。例如:头文件在当前目录下的dir文件夹下,gcc -I ./dir hello.c -o hello。 -c 只做预处理、编译、汇编。得到二进制文件。 -g 编译时添加调试文件,用于gdp调试。 -Wall 显示所有警告信息。 -D 向程序中“动态”注册宏定义(定义宏作为开关)。 -l 指定动态库库...
有些参数,本身并不是控制显示特定警告信息,而是控制其他参数,例如-Wall,这并不是“墙壁”的意思,而是一个有多个控制警告信息的参数的集合,使用了-Wall就相当于同时使用了多个其他-W开头的参数,例如使用-Wall就相当于同时使用了-Waddress -Warray-bounds=1 -Wbool-compare以及上面提到的-Wimplicit等许多参数。