HDC(HarmonyOS Device Connector)是OpenHarmony提供的命令行工具,用于连接和调试设备(如真机或模拟器)。文章最后附上其基本使用方法和常见命令。
第一篇安装好了sdk,但是没有对系统进行配置,所以执行sdk相关命令找不到路径,这篇做个配置,再用命令行写个简单的Helloworld程序。
首先,配置sdk,编辑~/.bash_profile加入到shell PATH,
# Openharmony SDK 路径配置
export OHOS_SDK_HOME=~/ohos-sdk
# hdc toolchain加入 PATH (用于连接设备)
export PATH=$OHOS_SDK_HOME/toolchains:$PATH
# 将 Native 编译器 (clang/cmake) 加入 PATH (用于编译代码)
export PATH=$OHOS_SDK_HOME/native/build-tools/cmake/bin:$PATH
export PATH=$OHOS_SDK_HOME/native/llvm/bin:$PATH

source ~/.bash_profile后应该命令生效,下面做几个简单测试

最后,我们手写一个helloworld程序,有一个入门认识:
cpp
#include <stdio.h>
int main() {
printf("Hello HarmonyOS from MacOS!\n");
return 0;
}
交叉编译一下(target参数意思明确,sysroot参数告诉编译器去哪里找鸿蒙的头文件和库,
__MUSL__ 是一个在 OpenHarmony 交叉编译环境中常见的预定义宏,用于标识目标系统使用的是 musl C 库,而非 glibc。这在配置编译环境时至关重要,因为 musl 和 glibc 在系统调用、ABI 等方面存在差异,需要不同的编译选项来适配。)
完成后可以使用命令发送到真机测试
cpp
hdc file send ./helloworldohos /data/local/tmp/
hdc shell
# 连接设备终端
chmod +x /data/local/tmp/helloworldohos
./data/local/tmp/main_ohos
因为没有真机,所以本地运行一下自然报错格式不正确。
获取帮助信息
- 查看全局帮助:运行
hdc help或hdc -h,显示所有可用命令的概要说明。 - 查看版本信息:使用
hdc version或hdc -v,输出工具版本号(如Ver: 3.2.0b)。
常用命令示例
- 列出连接的设备:
hdc list targets显示当前通过USB或无线连接的设备列表(如设备ID、状态)。
添加-v参数(如hdc list targets -v)可查看详细设备信息(如型号、传输协议)。 - 连接指定设备:
使用-t参数后跟设备标识符(如设备SN号或IP:端口),例如:
hdc -t emulator-5554 shell进入该设备的命令行交互界面。 - 文件传输:
hdc file send <本地文件路径> <设备路径>将文件上传到设备;
hdc file recv <设备路径> <本地路径>从设备下载文件。 - 端口转发:
hdc fport <本地端口>:<设备端口>将主机端口转发到设备端口(如hdc fport tcp:1234:tcp:1080)。 - 重启设备:
hdc target boot重启连接的设备。
IDE环境配置注意事项
- 路径配置:确保
hdc工具所在目录(如DevEco Studio/sdk/default/openharmony/toolchains或自定义路径)已添加到系统环境变量PATH中,否则需在命令前指定完整路径。 - 服务管理:若命令异常,可尝试重启服务:
hdc start -r(重启服务)或hdc kill -r(终止服务后重启)。
