[技术支持] 在编译源代码时,有哪些常见的编译器选项和参数?

[复制链接]
1657|11
 楼主| onlycook 发表于 2023-12-13 10:39 | 显示全部楼层 |阅读模式
在编译源代码时,有哪些常见的编译器选项和参数?
刮台风就会有人g 发表于 2023-12-30 11:55 | 显示全部楼层
主要以GCC(GNU Compiler Collection)为主
刮台风就会有人g 发表于 2023-12-30 11:55 | 显示全部楼层
文件和输出选项:

-c: 生成目标文件而不进行链接,用于编译源文件。
-o <output>: 指定输出文件的名称。

这种参数?
刮台风就会有人g 发表于 2023-12-30 11:56 | 显示全部楼层
调试选项:

-g: 生成包含调试信息的可执行文件,以便进行调试。
-O: 启用优化级别,默认是 -O0,可以使用 -O1 到 -O3 进行不同级别的优化。
刮台风就会有人g 发表于 2023-12-30 11:56 | 显示全部楼层
警告选项:

-Wall: 启用常见的警告信息。
-Werror: 将警告视为错误。
-Wextra: 启用额外的警告。
刮台风就会有人g 发表于 2023-12-30 11:59 | 显示全部楼层
预处理选项:

-D<macro>: 定义宏。
-U<macro>: 取消宏定义。
-I<directory>: 指定头文件搜索路径
刮台风就会有人g 发表于 2023-12-30 12:00 | 显示全部楼层
链接选项:

-l<library>: 链接时使用指定的库。
-L<directory>: 指定库文件搜索路径。
刮台风就会有人g 发表于 2023-12-30 12:18 | 显示全部楼层
多文件编译:

<source_file>: 指定源文件进行编译。
<object_file>: 指定目标文件进行链接。
-include <file>: 在编译之前包含指定的文件。
刮台风就会有人g 发表于 2023-12-30 12:19 | 显示全部楼层
平台和体系结构:

-march=<arch>: 指定目标体系结构。
-mcpu=<cpu>: 指定目标处理器。
刮台风就会有人g 发表于 2023-12-30 12:23 | 显示全部楼层
语言标准:

-std=<standard>: 指定使用的语言标准,如 -std=c11。
刮台风就会有人g 发表于 2023-12-30 12:24 | 显示全部楼层
优化选项:

-funroll-loops: 循环展开优化。
-finline-functions: 内联函数优化。
刮台风就会有人g 发表于 2023-12-30 12:27 | 显示全部楼层
目标平台:

-target <target>: 指定目标平台,适用于交叉编译。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

499

主题

2237

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部