如:$ gcc -Wall -Wno-unused test.c -o test 批量开启告警(即-Wall和-Wextra 批量开启的告警) 某些选项(如-Wall和-Wextra )会打开其他选项,例如-Wunused ,这可能会启用其他选项,例如-Wunused-value 。 -Wall (gcc -Wall详解_jiedu_新浪博客) 该选项相当于同时使用了下列所有的选项: ◆unused-function:遇到...
MinSizeRel模式:-Os -DNDEBUG RelWithDebInfo模式:-O2 -g -DNDEBUG 我们可以在 CMakeLists 中使用如下片段添加额外的编译选项: # 修改编译选项if("${CMAKE_CXX_COMPILER_ID}"STREQUAL"GNU")# debug 默认选项是 -gset(CMAKE_C_FLAGS_DEBUG"${CMAKE_C_FLAGS_DEBUG} -Wall -Wex...
“-std”选项来控制GCC编译时采用的某个C语言标准。 ‘-W’这是一个类似“-Wall”的通用选项,它对a selection of常见编程错误产生警告。“-W”和“-Wall”选项通常同时使用。 “-DNAME”选项在命令行上定义预处理宏NAME,默认情况下,其值为1。“-D”命令行选项可以用来定义有值的宏,形式是“-DNAME=VALUE”,...
1 -Wall 这是一个非常常用的编译选项,用于启用一批比较常见且易于修改的警告,这些选项都是对代码进行基本的检查,比如下面这些: 选项作用 -Waddress 检查是否存在可疑的内存地址使用 -Wformat 检查标准库函数的使用格式是否正确,比如printf的格式化字符串中的格式符和对应的参数是否匹配 -Wunused-function 对已声明但是未...
“-Wall”选项打开所有最常用到的编译警告,强烈建议打开,可以捕捉到许多在C编程中最常发生的错误。 “-o”选项来为可执行文件指定一个不同的输出文件。 “-c”用于把源码文件编译成对象文件。 对象文件包含的是机器码,其中任何对在其他文件中的函数(或变量)的内存地址的引用都留着没有被解析。这样就允许在互相...
-Wall:该标志启用一套全面的警告,涵盖各种潜在问题。 -Werror:该标志将警告视为错误,使编译器在遇到警告时停止编译过程。 4.预处理器Flag 预处理器标志负责处理源代码中以#开头的指令。这些标志定义宏并控制编译。 一些常用的预处理器标志包括: -D:该标志用于在编译过程中定义宏。例如,-DDEBUG可用于定义DEBUG宏...
-Wall选项会开启所有常见的警告信息。 指定优化级别 指定优化级别 -O2表示启用二级优化。 生成调试信息 生成调试信息 -g选项会在编译时加入调试信息,便于使用调试器进行调试。 指定目标架构 指定目标架构 -m32表示生成32位架构的可执行文件。 静态链接 静态链接 -static选项会强制进行静态链接,生成的可执行文件不依赖于...
-O0 、-O1 、-O2 、-O3 编译器的优化选项的 4 个级别,-O0 表示没有优化, -O1 为默认值,-O3 优化级别最高。 -g 只是编译器,在编译的时候,产生调试信息。 -gstabs 此选项以 stabs 格式声称调试信息, 但是不包括 gdb 调试信息。 -gstabs+
g++ main.cpp src/Swap.cpp -Iinclude -std=c++11 -O2 -Wall -o b.out # 运行 b.out ./b.out 1. 2. 3. 4. 3. 生成库文件并编译 ## 进入src目录下 cd src # 汇编,生成Swap.o文件 g++ Swap.cpp -c -I../include # 生成静态库libSwap.a ...
"-Wall" 允许发出GCC能够提供的所有有用的告警信息。该选项的运行结果如下所示: # gcc –Wall warning.c –o warning warning.c:4 警告:main的返回类型不是int warning.c: 在函数main中 warning.c:7 警告——在无返回值的函数中,return带返回值