> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs-staging.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 升级 QIR SDK 工件

> 本文档介绍如何在不重新构建整个 QIR SDK 的情况下升级 QIR SDK 工件。

export const QLI_TAG = 'qli-2.1';

在已运行受支持的机器人镜像的设备上,使用以下过程升级 QIR SDK 工件,而无需重新构建或重新烧录整个 QIR SDK。

<Note>
  不适用于 `qcom-robotics-distro-catchall` 发行版。
</Note>

<Warning>
  **警告**

  Qualcomm Linux 2.0 版本(<code>{QLI_TAG}</code>)附带的以下预构建机器人镜像仅使用与同一发布包中随附的 QIR SDK 工件进行了验证。建议将该已验证的组合用于生产部署。

  * Qualcomm 机器人镜像:`qcom-robotics-image`。
  * Qualcomm 机器人专有镜像:`qcom-robotics-proprietary-image`。

  在主机系统上更新、替换或混用不同版本的 QIR SDK 工件属于超出已验证配置的范围,可能会导致兼容性、性能或稳定性问题。
</Warning>

## 前提条件

* 设备已开机并成功启动。
* 可以通过 SSH 访问设备(在以下命令中,将 `[ip-addr]` 替换为设备 IP 地址)。

## 过程

<Accordion title="试一试">
  <Steps>
    <Step title="获取 QIR SDK 工件">
      从 [下载预构建软件包](./download-the-prebuilt-packages) 获取 QIR SDK 工件并解压软件包。
    </Step>

    <Step title="将解压后的 QIR 工件推送到设备">
      ```bash theme={null}
      scp -r <path>/qirp-sdk_<version>/qirp-sdk/. root@[ip-addr]:/opt/runtime/qirp-sdk/
      ```
    </Step>

    <Step title="在设备上运行升级脚本">
      ```bash theme={null}
      ssh root@[ip-addr] "chmod +x /opt/runtime/qirp-sdk/scripts/*.sh"
      ssh root@[ip-addr] "/opt/runtime/qirp-sdk/scripts/qirp-upgrade*.sh"
      ```
    </Step>
  </Steps>

  <Note>
    **可选:使用 `adb` 代替 SSH**

    设备上默认禁用 `adb`。要启用它,请在设备上运行以下命令:

    ```bash theme={null}
    touch /etc/usb-debugging-enabled
    systemctl start android-tools-adbd
    ```

    一旦启用 `adb`,您可以从主机运行等效命令:

    ```bash theme={null}
    adb push <path>/qirp-sdk_<version>/qirp-sdk/. /opt/runtime/qirp-sdk/
    adb shell "chmod +x /opt/runtime/qirp-sdk/scripts/*.sh"
    adb shell "/opt/runtime/qirp-sdk/scripts/qirp-upgrade*.sh"
    ```
  </Note>
</Accordion>

## 结果

升级完成后,设备上的 QIR SDK 工件已更新,而无需完整重建 SDK。
