news 2026/6/22 22:16:41

搭建鸿蒙PC命令行适配环境测试hello程序

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
搭建鸿蒙PC命令行适配环境测试hello程序

搭建鸿蒙PC命令行适配环境

    • 前言
    • 系统环境
      • windows系统搭建好hdc工具
      • wsl系统环境为Ubuntu 22.04
    • 配置鸿蒙sdk
      • 下载
      • 配置
      • 验证
    • 命令行hello工具
      • 编译
    • 运行hello程序
    • 其它

前言

鸿蒙PC命令行环境搭建,通常借助Ubuntu系统搭建交叉编译环境。这里借助windows系统的wsl完成。

系统环境

这里假定windows系统下的hdc工具已经可以使用,wsl的Ubuntu22.04已经配置成功。如果没有配置,搜索搭建一下。

windows系统搭建好hdc工具

wsl系统环境为Ubuntu 22.04

配置鸿蒙sdk

开源鸿蒙sdk的版本可以通过如下链接下载:
https://repo.huaweicloud.com/openharmony/os/
这里面有很多版本,最新的是6.0.0.1版本。也有根据自己需要下载里面的ohos-sdk-windows_linux-public.tar.gz
当然,也可以使用华为官网发布的command-line-tools for Linux。网址为:最新版本 - 下载中心 - 华为开发者联盟。

下载

这里以下载command-line-tools for Linux为例。

配置

搭建交叉编译环境,需要配置好环境变量,方便编译时使用。
wsl里面,打开~/.bashrc,配置如下环境变量,追加在文件最后面。

exportOHOS_SDK_HOME=$HOME/command-line-tools/sdk/default/openharmony# Native 编译器 (clang/cmake等)exportPATH=$OHOS_SDK_HOME/native/build-tools/cmake/bin:$PATHexportPATH=$OHOS_SDK_HOME/native/llvm/bin:$PATH

验证

重新导入一下.bashrc,使新增加的环境变量生效。

$source~/.bashrc

如果查看clang命令的版本,已经显示OHOS相关的信息,则表示环境变量已经生效。

$ clang --version OHOS(dev)clang version15.0.4(llvm-project 115b628d33dda4da4b17e14ed69dd8b74c058b48)Target: x86_64-unknown-linux-gnu Thread model: posix InstalledDir: /home/yan/command-line-tools/sdk/default/openharmony/native/llvm/bin

命令行hello工具

编译

简单代码如下:

#include <stdio.h> int main() { printf("Hello HarmonyOS from WSL Ubuntu 22.04!\n"); return 0; }

需要明确指定目标架构(Target)和系统根路径(Sysroot):

  • target:虽然常见的鸿蒙设备可能基于aarch64架构,但目标平台是鸿蒙 PC 模拟器,则应设置targetx86_64-linux-ohos,以匹配其x86_64架构和 OpenHarmony 操作系统环境。
  • sysroot:该参数用于告知编译器使用鸿蒙系统提供的头文件和库,而非主机(如 Ubuntu)自带的标准库。通过指定正确的 sysroot 路径,可确保编译出的程序与鸿蒙系统的运行时环境兼容。
$ clang --target=x86_64-linux-ohos --sysroot=$OHOS_SDK_HOME/native/sysroot -D_MUSL_ hello.c -o hello-x86

运行hello程序

模拟器环境是在windows系统上,通过搭建好的hdc工具,发送编译好的hello-x86程序到/data/local/tmp/目录。添加可执行权限,程序就可以运行了。

其它

在鸿蒙系统中,/data/local/tmp目录虽然可以临时存放可执行程序(例如一个简单的hello程序),且运行基本不受限制,但其权限非常受限。若程序功能较为复杂(如涉及系统调用、文件访问或网络通信等),这种方式往往无法满足需求。

此外,大多数为 Linux 重新适配的工具即使成功编译为 HNP(HarmonyOS Native Package)格式,也无法直接安装运行,必须进一步封装为 HAP(HarmonyOS Ability Package)并通过系统标准流程部署,才能获得必要的权限和运行环境

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/23 11:47:44

编辑相似度(Edit Similarity):原理、演进与多模态扩展

本文由「大千AI助手」原创发布&#xff0c;专注用真话讲AI&#xff0c;回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关注我&#xff0c;一起撕掉过度包装&#xff0c;学习真实的AI技术&#xff01; 1 引言 在人工智能与机器学习领域&#xff0c;衡量两个数据对象之间的…

作者头像 李华
网站建设 2026/6/23 10:34:04

【深度解析】MiniCPM 2.0:端侧大模型的技术性进展与技术革新

2024年9月5日&#xff0c;MiniCPM团队正式发布了备受瞩目的端侧语言大模型系列——MiniCPM 2.0的技术报告。作为一款聚焦于终端设备部署的轻量化大模型&#xff0c;MiniCPM 2.0在保持模型小巧体积的同时&#xff0c;实现了性能的跨越式提升&#xff0c;为人工智能在边缘计算领域…

作者头像 李华
网站建设 2026/6/23 1:49:03

ClickHouse 快速入门

ClickHouse 快速入门1 ClickHouse 介绍1 行式存储VS列式存储2 ClickHouse VS MySQL3 ClickHouse VS Apache Doris4 ClickHouse 的优缺点5 ClickHouse 适用的场景2 ClickHouse 安装1 镜像下载2 容器运行3 创建用户3 ClickHouse 连接1 连接2 建表测试4 SpringBoot 集成 ClickHous…

作者头像 李华
网站建设 2026/6/23 1:19:53

基于SpringBoot的人事管理系统设计与实现

基于SpringBoot的人事管理系统设计与实现 基于SpringBoot的人事管理系统&#xff1a;毕业设计优质资源全解析 在当今数字化时代&#xff0c;企业人力资源管理正经历着从传统手工操作向智能化、自动化转型的关键阶段。对于计算机科学和软件工程专业的学生而言&#xff0c;一个…

作者头像 李华
网站建设 2026/6/23 1:18:38

Day36官方文档的阅读

官方文档咋找&#xff1f; 常用渠道是项目的 GitHub 仓库&#xff08;一般会有docs文件夹&#xff09;&#xff0c;或者工具 / 框架的官方网站。 看文档的注意点 必须保证你安装的工具包版本&#xff0c;和看的文档版本一致&#xff01;不然可能出现 “文档写了 A 功能&#x…

作者头像 李华