Fildc


The FIDL compiler

Usage: fidlc [--json JSON_PATH]
             [--available PLATFORM:VERSION[,VERSION]...]
             [--versioned PLATFORM[:VERSION]]
             [--name LIBRARY_NAME]
             [--experimental FLAG_NAME]
             [--werror]
             [--format=[text|json]]
             [--json-schema]
             [--depfile DEPFILE_PATH]
             [--files [FIDL_FILE...]...]
             [--help]

All of the arguments can also be provided via a response file, denoted as
`@responsefile`. The contents of the file at `responsefile` will be interpreted
as a whitespace-delimited list of arguments. Response files cannot be nested.

See <https://fuchsia.dev/fuchsia-src/development/languages/fidl/reference/compiler>
for more information.


选项

  • --json JSON_PATH。如果存在,此标记指示 fidlc 将 库的中间表示法。中间层 表示为符合通过 --json-schema 提供的架构的 JSON。 中间表示法用作各个后端的输入。

  • --available PLATFORM:VERSION\[,VERSION]...。如果存在,此标志指示 fidlc 在任何给定的 VERSION 下添加 PLATFORM 下带有 @available 注解的元素。 PLATFORM 对应于库的@available(platform="PLATFORM")属性, 如果省略 platform 参数,则会添加到库名称的第一个组件中。 例如:--available example:1,3 选择平台“example”的版本 1 和版本 3。

  • --versioned PLATFORM\[:VERSION]。如果存在,此标记指示 fidlc 验证正在编译的主库是否在 PLATFORM 下进行了版本编号。 如果提供了 VERSION,还会验证在 VERSION 中添加了库。 该库的平台确定如下:

    • 如果没有 @available 属性,平台将“未版本化”。
    • 平台可以使用 @available(platform="PLATFORM") 明确指定。
    • 否则,平台是库名称的第一个组成部分。
  • --name LIBRARY_NAME。如果存在,此标记指示 fidlc 进行验证 正在编译的主库具有给定的名称。此标志有用 来交叉检查构建系统中的库声明与 库的实际内容

  • --experimental FLAG_NAME。如果存在,此标记会启用实验性功能

  • --depfile DEPFILE_PATH。由 fidlc 生成的目录文件的路径。此依赖项为 用于获取正确的增量编译规则。此文件由 fidlc 填充 fidlc 和 in[1-3] 生成的输出是读取的文件。输入文件 --files 传递的内容。输出文件是由 fidlc 生成的文件。

  • --files \[FIDL_FILE...]...。每个 --files \[FIDL_FILE...] 参数块 描述一个库,所有库必须使用相同的顶级库名称 声明。库必须按依赖项顺序呈现,以 库能够使用之前库中的声明,但反之则不然。 系统只会为最终库生成输出,而不会为其每个依赖项生成输出。

  • --json-schema。如果存在,此标记指示 fidlc 将 中间表示法的 JSON 架构。

  • --format=\[text|json]。如果存在,此标志用于设置 fidlc 的输出模式。 这会指定如果编译失败,是否在 纯文本(默认)格式或 JSON 格式。

  • --werror。将警告视为错误。

  • --help。输出此帮助,并立即退出。