答案 0 :(得分:8)
请务必查看Documentation
-Wa,选项
将选项作为汇编程序的选项。如果选项包含逗号,则会在逗号中将其拆分为多个选项。
所以在你的情况下-a
和-ad
被传递给汇编程序,那些依赖于你的汇编程序。 Gcc不知道如何处理特定于系统的汇编程序选项,因此给它-Wa
标志让它知道只传递随后的内容。
您还可以通过man pages在本地查找文档。要打开GNU汇编程序的文档,请执行:
$ man 1 as
它会打开:
AS(1) GNU Development Tools AS(1)
NAME
AS - the portable GNU assembler.
SYNOPSIS
as [-a[cdghlns][=file]] [--alternate] [-D]
[--compress-debug-sections] [--nocompress-debug-sections]
[--debug-prefix-map old=new]
[--defsym sym=val] [-f] [-g] [--gstabs]
[--gstabs+] [--gdwarf-2] [--gdwarf-sections]
[--help] [-I dir] [-J]
[-K] [-L] [--listing-lhs-width=NUM]
[--listing-lhs-width2=NUM] [--listing-rhs-width=NUM]
[--listing-cont-lines=NUM] [--keep-locals] [-o
objfile] [-R] [--reduce-memory-overheads] [--statistics]
[-v] [-version] [--version] [-W] [--warn]
[--fatal-warnings] [-w] [-x] [-Z] [@FILE]
[--size-check=[error|warning]]
[--target-help] [target-options]
[--|files ...]
...
答案 1 :(得分:3)
由于这些选项已传递给汇编程序,因此您需要检查as
的手册页,而不是gcc
。
-a
打开汇编输出列表(写入标准输出),而-ad
省略输出列表中的任何调试指令。
答案 2 :(得分:1)
为了查看bash中任何命令的选项列表,您可以运行以下命令:
man COMMAND
在这种情况下
man gcc
将显示-Wa,option
表示以下内容:
将选项作为汇编程序的选项。如果选项包含逗号, 它在逗号中分为多个选项。