1. 主页
  2. 文档
  3. Fuchsia OS 简体中文文档 (2019年版...
  4. 开发
  5. 工作流
  6. 快速入门与应用

快速入门与应用


这篇文档介绍了一般情况下使用 fx 开发命令在设备上构建和部署 Fuchsia。大多数此类命令都有不常见情况的选项;有关详细信息,请参阅 fx help <command>

构建与部署

使用 fx 的初始构建和部署工作流程如下:





  1. fx set <arch>
    为 [x64, arm64] 其中一个配置构建内容。

  2. fx full-build

    构建 Zircon,然后是 Fuchsia 的其余部分。

  3. fx mkzedboot <usb_drive_device_path>

    构建 Zedboot 介质然后安装到 USB 驱动器中。请参见下边的内容说明,获取 USB 驱动器的路径。

  4. fx pave

    启动 bootserver。

  5. 将 Zedboot USB 连接到设备并重新启动。
    Zedboot 会连接主机设备,并下载安装镜像,然后安装到设备中。

USB 驱动器的路径

根据主机设备操作系统的不同,确定 USB 驱动器的正确路径的说明如下。你可以运行这些命令观察在连接 USB 驱动器和未连接 USB 驱动器时的区别。

  • Linux 用户:

    • sudo fdisk -l

    设备通常是 /dev/sd[x] 这种格式,例如:“/dev/sdc”。选择驱动器而不是特定分区。

  • Mac 用户:

    • diskutil list | grep external

    设备通常是 /dev/disk[n] 这种格式,例如:“/dev/disk2”。

    • 如果看到错误 “ERROR: Can’t open /dev/disk[n]: Resource busy” 那么你需要解除 USB 挂载。运行 hdiutil unmount /dev/disk[n] 。如果没有修复这个错误,尝试重新配置驱动:diskutil eraseDisk JHFSX <name_of_the_usb_stick> /dev/disk[n]

后续构建和部署

使用 fx 重新构建和重新部署的工作流略有不同:






  1. 检查瀑布式仪表盘
    帮助确保 HEAD 处于可拉取状态。

  2. jiri update
    获取最新的源码。

  3. fx full-build

    构建 Zircon,和 Fuchsia 的剩余部分。

  4. fx serve

    在 host 上启动开发包服务器。

  5. 移除 Zedboot USB 启动设备。

    将设备引导至最后安装的状态。

  6. fx ota

    将更新的包推送到设备。

注意:如果需要,可以按照上一节中的步骤 4-5 使用 Zedboot USB 重新安装。虽然这比较慢,但是在系统处理 OTA 的方式不够优雅的情况下这可能又是必须的。

常见问题

  1. 在你的路径中含有 “.” 有可能导致 fx full-build 运行失败。脚本会改变工作目录,这有可能导致使用的命令(例如:touch)和在工作目录下的二进制文件产生冲突。

我们要如何帮助您?

Comments

Leave a reply

您的邮箱地址不会被公开。 必填项已用 * 标注