打印
[技术支持]

在编译源代码时,有哪些常见的编译器选项和参数?

[复制链接]
1220|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 进行不同级别的优化。

使用特权

评论回复
5
刮台风就会有人g| | 2023-12-30 11:56 | 只看该作者
警告选项:

-Wall: 启用常见的警告信息。
-Werror: 将警告视为错误。
-Wextra: 启用额外的警告。

使用特权

评论回复
6
刮台风就会有人g| | 2023-12-30 11:59 | 只看该作者
预处理选项:

-D<macro>: 定义宏。
-U<macro>: 取消宏定义。
-I<directory>: 指定头文件搜索路径

使用特权

评论回复
7
刮台风就会有人g| | 2023-12-30 12:00 | 只看该作者
链接选项:

-l<library>: 链接时使用指定的库。
-L<directory>: 指定库文件搜索路径。

使用特权

评论回复
8
刮台风就会有人g| | 2023-12-30 12:18 | 只看该作者
多文件编译:

<source_file>: 指定源文件进行编译。
<object_file>: 指定目标文件进行链接。
-include <file>: 在编译之前包含指定的文件。

使用特权

评论回复
9
刮台风就会有人g| | 2023-12-30 12:19 | 只看该作者
平台和体系结构:

-march=<arch>: 指定目标体系结构。
-mcpu=<cpu>: 指定目标处理器。

使用特权

评论回复
10
刮台风就会有人g| | 2023-12-30 12:23 | 只看该作者
语言标准:

-std=<standard>: 指定使用的语言标准,如 -std=c11。

使用特权

评论回复
11
刮台风就会有人g| | 2023-12-30 12:24 | 只看该作者
优化选项:

-funroll-loops: 循环展开优化。
-finline-functions: 内联函数优化。

使用特权

评论回复
12
刮台风就会有人g| | 2023-12-30 12:27 | 只看该作者
目标平台:

-target <target>: 指定目标平台,适用于交叉编译。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

432

主题

1607

帖子

3

粉丝