开源鸿蒙终端工具Termony编译-WSL版
开源鸿蒙终端工具Termony编译指南(WSL版) Termony是鸿蒙PC平台上的类Linux终端环境,提供命令行开发体验。本文介绍在WSL2 Ubuntu 22.04环境下编译Termony的完整步骤,包括环境配置(需16G内存)、源码下载、依赖安装、鸿蒙SDK配置以及编译过程。编译耗时较长(数小时),成功后生成1G多的HAP包。目前主要支持MateBook Pro等鸿蒙PC设备安装,需进行签
开源鸿蒙终端工具Termony编译-WSL版
鸿蒙PC开发工具
前言
Termony是一款开源运行在开源鸿蒙PC上的命令行操作工具,可内置多种开源命令行,但需要手动按照规则配置详细的交叉编译链路。
本文介绍wsl环境下编译Termony的步骤。
Termony是什么?
Termony 是一个面向 HarmonyOS 电脑的类 Termux 终端环境,目前仍在开发中。它的目标是在 HarmonyOS 上提供类似 Linux 的命令行体验,支持运行基础命令、编译和执行 C/C++ 程序,并集成了大量实用工具和开发组件。
像我们熟悉的 Linux命令行工具,如bash、fish、gcc、gdb、git、python、vim、tmux、htop、openssh、make、curl 等常用开发与系统工具都有包含。
Termony利用 HarmonyOS 的 HNP 机制 打包原生二进制程序(.hnp 文件),在安装 HAP 时自动解压到 /data/app/ 并创建软链接至 /data/app/bin/。
Termony 是 HarmonyOS 电脑平台上的“Linux 子系统雏形”,为开发者在鸿蒙生态中提供本地化、高自由度的命令行开发环境。
编译环境搭建
Termony编译除了要搭建基础编译环境,还需要用到鸿蒙sdk。
系统环境
- WSL2 Ubuntu 22.04
- 主机内存大于16G
- Windows上配置好hdc等工具
下载源码
$ git clone https://github.com/TermonyHQ/Termony.git
软件包
ws的ubuntu环境,需要安装的基础的软件包可能没有写,但下面的软件包一定需要安装。
# python3.8环境
$ sudo apt-get install wget make gsed gettext automake coreutils flex cmake yacc libncurses5-dev pkg-config tcl zip nodejs openjdk-8-jdk
$ pip3 install meson=1.2.0
$ pip3 install toml
sdk
下载Command Line Tools 6.0.1 Linux版本的工具,解压到某个目录。官网下载地址:最新版本 - 下载中心 - 华为开发者联盟
TOOL_HOME环境变量
注意:TOOL_HOME识别不了~/路径,所以不要偷懒,使用绝对路径。
$ export TOOL_HOME="/home/test/command-line-tools"
编译
前面都准备好了,接下来就开始编译了。编译并不复杂,但太耗时间了。
$ cd Termony
$ ./build-linux.sh -b
在WSL环境编译可能要好几个小时,如果编译机器性能好,时间会短些。
编译过程中,会大量的下载源码,所以一定要保持网络畅通,否则代码下载不全,可能会导致编译失败。
遇到错误,查看具体的错误原因,如源码不完整,工具没装,待准备好后,重新编译。
编译成功后的HAP目录
> hvigor Finished :entry:default@SignHap... after 37 ms
> hvigor Finished :entry:default@CollectDebugSymbol... after 48 ms
> hvigor Finished :entry:assembleHap... after 1 ms
> hvigor BUILD SUCCESSFUL in 19 s 279 ms
如上提示即为编译成功。
编译好的HAP包有1G多,实在太过庞大。
$ ls entry/build/default/outputs/default/ -lh
total 1.4G
-rwxrwxrwx 1 test test 1.4G Dec 7 18:46 entry-default-unsigned.hap
drwxrwxrwx 1 test test 4.0K Dec 7 07:33 mapping
-rwxrwxrwx 1 test test 533 Dec 7 07:31 pack.info
安装
Termony可能还不支持在DevEco模拟器里的安装,至少我没有安装成功。把模拟器安装挂几次,最终只有放弃了。
需要在实际的鸿蒙PC上安装,官方说明文档也是写的MateBook Pro。安装到鸿蒙PC需要签名,需要执行签名脚本。配置build-profile.json5相关签名,然后执行。
$ ./build-linux -s
签名后即可通过hdc工具将HAP包安装到鸿蒙PC(实际未验证)。
其它
Termony本身是一个HAP,它内部集成了整套工具链,甚至包含qemu。
另外还有两个正在开发中的鸿蒙终端工具,也挺有意思的,是基于qemu开发的。Harmonix和HiSH,这两个工具是同一个开发者,前者是基于qemu-user,后者基于qemu。
这两个终端工具可以直接在模拟器里安装,可以不用编译直接使用。
可能遇到的问题
- 提示git submodule update --init
这种错误,一般是代码没有下载全,需要下载完整的代码才能编译。 - hvigor ERROR: spawn java ENOENT
需要安装openjdk-8-jdk软件包。
更多推荐



所有评论(0)