集成商开发套件 (IDK) 布局

集成器开发套件 (IDK) 归档包含开始针对 Fuchsia 构建和运行程序所需的特定于紫红色的库、FIDL 接口和工具。

该 IDK 是 Fuchsia 平台的公开定义。它有意独立于特定的构建环境,并且目标是集成和工程团队将 Fuchsia 集成到特定的开发环境。例如,它不包含任何构建系统,不使用任何工具链,也不提供标准的非 Fuchsia 库(例如用于加密或图形的库)。 相反,它提供准确描述其各个部分的元数据,以便使用特定工具和支持库进行处理和增强 IDK,从而打造端到端开发体验。

大多数希望为 Fuchsia 构建应用的开发者都不需要直接与 IDK 合作。它们将转而使用它的转换版本,例如在支持给定语言运行时的开发环境和生态系统中。希望添加对 Fuchsia 支持的开发环境的维护者是 IDK 的主要目标对象。如需了解如何处理此 IDK,请参阅集成 Core SDK

因此,Fucsia IDK 代表了 Fuchsia 平台开发者与其他使用 Fuchsia 的开发者之间的合同。虽然该协定是绝对必要的,由于此 IDK 包含特定于 Fuchsia 的位,因此还不够,将由其他“协定”进行补充。Fuchsia IDK 在这方面反映了 Fuchsia 平台:高度可组合性和可扩展性,并且明确分离关注点。

结构

从现在开始,IDK 归档的根目录将称为 //

元数据

元数据以 JSON 文件的形式在整个 IDK 中存在。此 IDK 中的每个元素都有自己的元数据文件:例如,FIDL 库 //fidl/fuchsia.foobar 的元数据采用 //fidl/fuchsia.foobar/meta.json 编码。

每个元数据文件都遵循 //meta/schemas 下提供的 JSON 架构:例如,FIDL 库的元数据文件符合 //meta/schemas/fidl_library.json。 架构充当元数据的文档,可用于协助 IDK 提取过程。请参阅理解元数据

文档

您可以在 IDK 发行版的 //docs 下找到常规文档,也可以通过 fuchsia.dev/fuchsia-src/docs/development/idk 在线获取常规文档。 某些单独的 IDK 元素还会直接在其在 IDK 中的托管路径下提供文档。

目标预构建文件

目标预构建文件托管在 //arch/<architecture> 下。这包括每个可用架构的完整 sysroot。

源代码库

IDK 包含大量 FIDL 库(在 //fidl 下)以及一些 C/C++ 库(在 //pkg 下)的源代码。如需了解详情,请参阅编译 C/C++

托管工具

多个主机端工具可在 //tools 下找到。这包括用于构建程序、部署到设备、调试等的工具... 您可以在 //docs 下找到有关如何使用这些工具的一些信息。具体而言:

图像

//device 包含描述与指定 IDK 版本匹配的设备配置的元数据。此元数据包含可铺到所述设备上的图像指针。如需了解如何与运行 Fuchsia 的设备交互,请参阅使用设备