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

# 状态栏

> 从 VS Code 状态栏构建、部署和运行您的应用程序。

## 状态栏操作

窗口底部的 VS Code 状态栏包含由扩展添加的操作按钮：

<img src="https://mintcdn.com/qualcomm-prod/C3kDUdllcH5eq3jY/Tools/QVSCE/images/status_bar_buttons.png?fit=max&auto=format&n=C3kDUdllcH5eq3jY&q=85&s=d61c51a239243b544eb62d961d4e973b" alt="VS Code 状态栏 — Qualcomm 操作按钮" width="1548" height="1016" data-path="Tools/QVSCE/images/status_bar_buttons.png" />

| # | 按钮                            | 操作              |
| - | ----------------------------- | --------------- |
| 1 | **Build**                     | 为活动设备交叉编译项目     |
| 2 | **Deploy**                    | 构建并将二进制文件推送到设备  |
| 3 | **Run**                       | 在设备上执行已部署的二进制文件 |
| 4 | **Refresh Device**            | 重新扫描已连接的设备      |
| 5 | **Select a Connected Device** | 选择要面向的已连接设备     |

<Warning>
  **Deploy** 默认将二进制文件安装到 `/usr/bin`。这会**覆盖设备上任何同名的现有二进制文件**。如果要保留多个版本，请重命名输出的二进制文件。
</Warning>

## 构建

点击 **Build**（或通过 `Ctrl+Shift+B` 运行 `Build` 任务）。扩展使用工作区配置的 SDK 工具链编译项目。

<CodeGroup>
  ```bash CMake project theme={null}
  cmake -B build -DCMAKE_TOOLCHAIN_FILE=$QSC_TOOLCHAIN
  cmake --build build
  ```

  ```bash Make project theme={null}
  make -j$(nproc) CROSS_COMPILE=$QSC_CROSS_PREFIX
  ```
</CodeGroup>

## 部署

点击 **Deploy**。扩展会编译项目（与 Build 相同），然后通过 ADB 或 SSH 推送二进制文件。

```bash theme={null}
# Equivalent ADB push
adb push ./build/my-app /usr/bin/my-app
```

## 运行

点击 **Run**，在活动设备上执行已部署的二进制文件。扩展通过 ADB 或 SSH 启动二进制文件，并将其输出流式传输到集成终端。

```bash theme={null}
# Equivalent ADB invocation
adb shell /usr/bin/my-app
```

## 调试

<Steps>
  <Step title="设置断点">
    点击源代码行旁边的边栏以设置断点。
  </Step>

  <Step title="启动调试会话">
    点击状态栏中的 **Debug** 或按 `F5`。
  </Step>

  <Step title="检查状态">
    调试面板提供以下访问： - **Variables** 窗格 — 局部和全局变量值 - **Watch** 窗格 — 自定义表达式 - **Call Stack** —
    从断点开始的完整调用链 - **Registers** — 硬件寄存器内容 - **Disassembly** — 源码 + 汇编混合视图 - **Memory** — 原始内存检查
  </Step>
</Steps>

<Note>
  调试配置会自动生成在 `.vscode/launch.json` 中。编辑此文件可更改远程目标地址、二进制文件路径或 GDB/LLDB 参数。
</Note>

## 构建故障排除

<AccordionGroup>
  <Accordion title="IntelliSense 显示错误的报错">
    `.vscode/c_cpp_properties.json` 文件可能已过期。从命令面板（`Ctrl+Shift+P`）运行 **QVSCE: Regenerate Workspace** 以重新生成它。
  </Accordion>

  <Accordion title="部署后在设备上找不到二进制文件">
    确认在 **Dashboard → Devices** 中正确设置了活动设备。检查 ADB/SSH 连接是否正常：

    ```bash theme={null}
    adb devices   # ADB
    ssh user@<device-ip> echo ok   # SSH
    ```
  </Accordion>

  <Accordion title="调试会话无法附加">
    确保二进制文件在编译时带有调试符号（`-g` 标志）。确认设备上已安装 `gdbserver` — 通过 ADB/SSH 运行 `which gdbserver` 进行确认。
  </Accordion>
</AccordionGroup>
