基于OpenHarmony HI3861 开发环境搭建,并编译通过
适用平台:Windows 11 + WSL2 (Ubuntu) | 目标系统:OpenHarmony | 版本:v1.0
目录
1 环境准备:WSL 安装与配置
2 Git 与 Repo 工具配置
3 获取 OpenHarmony 源码
4 WSL 迁移(C 盘空间不足时)
5 编译环境搭建
6 编译 OpenHarmony
7 附录:常用命令速查
1 环境准备:WSL 安装与配置
1.1 启用 WSL 功能
注意:以下操作需在「Windows 终端(管理员)」或「命令提示符(管理员)」中执行。
右键点击「开始菜单」,选择「Windows 终端(管理员)」,依次执行以下命令:
步骤一:安装 WSL
wsl --install
步骤二:启用虚拟机平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
注意:以上两条命令执行完成后,请重启电脑。
1.2 安装 Ubuntu 镜像
从微软商店或以下链接获取 Ubuntu 镜像并安装:
https://comate.baidu.com/zh/page/7vf0mt2gc3s
2 Git 与 Repo 工具配置
2.1 安装 Git 与 Git LFS
sudo apt-get update
sudo apt-get install git git-lfs
2.2 配置 Git 用户信息
git config --global user.name "******1717"
git config --global user.email "******1717@qq.com"
git config --global credential.helper store
ssh-keygen -t ed25519 -C "******1717@qq.com"
2.3 安装 repo 工具
mkdir ~/bin
curl https://raw.gitcode.com/gitcode-dev/repo/raw/main/repo-py3 -o ~/bin/repo
chmod a+x ~/bin/repo
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests --break-system-packages
将 repo 添加到环境变量:
vim ~/.bashrc
在文件末尾添加一行:export PATH=~/bin:$PATH
source ~/.bashrc
3 获取 OpenHarmony 源码
cd ~/code
repo init -u git@gitcode.com:openharmony/manifest.git -b master --no-repo-verify
repo sync -c
注意:repo sync -c 耗时约 30 分钟左右,根据个人PC配置决定,请耐心等待。
repo forall -c "git lfs pull"
4 WSL 迁移(C 盘空间不足时)
注意:下载源码后 C 盘空间可能不足,建议将 WSL 迁移到其他磁盘。
步骤一:停止 WSL
wsl --shutdown
步骤二:迁移到目标磁盘
wsl --manage Ubuntu --move "E:\WSL\Ubuntu"
注意:迁移后 C 盘将释放大量空间。
5 编译环境搭建
5.1 安装系统依赖库与工具
执行以下命令安装编译所需的全部依赖:
sudo apt-get update
sudo apt-get install -y binutils binutils-dev git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libc6-dev-amd64 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.9 python3-pip ruby genext2fs device-tree-compiler make libffi-dev e2fsprogs pkg-config perl openssl libssl-dev libelf-dev libdwarf-dev u-boot-tools mtd-utils cpio doxygen liblz4-tool openjdk-8-jre gcc g++ texinfo dosfstools mtools default-jre default-jdk libncurses5 apt-utils wget scons python3.9-distutils tar rsync git-core libxml2-dev lib32z-dev grsync xxd libglib2.0-dev libpixman-1-dev kmod jfsutils reiserfsprogs xfsprogs squashfs-tools pcmciautils quota ppp libtinfo-dev libtinfo5 libncurses5-dev libncursesw5 libstdc++6 gcc-arm-none-eabi vim ssh locales libxinerama-dev libxcursor-dev libxrandr-dev libxi-dev
5.2 安装 Python 与虚拟环境
sudo apt-get install python3
sudo apt-get install python-is-python3
sudo apt install -y python3.14-venv python3-full python3-pip
5.3 安装 hb 编译工具
创建并激活虚拟环境:
python3 -m venv ~/code/oh_venv
source ~/code/oh_venv/bin/activate
pip install build/hb
5.4 安装 Scons
python3 -m pip install scons
scons -v
5.5 安装 Python 模块
pip3 install setuptools
pip3 install kconfiglib
pip3 install pycryptodome
pip3 install six --upgrade --ignore-installed six
pip3 install ecdsa
5.6 安装 RISC-V 交叉编译器
下载编译器:
https://repo.huaweicloud.com/harmonyos/compiler/gcc_riscv32/7.3.0/linux/gcc_riscv32-linux-7.3.0.tar.gz
解压到用户目录:
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~
配置环境变量:
sudo vim /opt/.bashrc
在文件末尾添加:export PATH=/home/wangh/gcc_riscv32/bin:$PATH
source /opt/.bashrc
验证安装:
riscv32-unknown-elf-gcc -v
5.7 下载预编译文件
在虚拟环境激活状态下执行:
source ~/code/oh_venv/bin/activate
repo forall -c "git lfs pull" && bash build/prebuilts_download.sh
6 编译 OpenHarmony
编译流程:
cd ~/code
source oh_venv/bin/activate
source /opt/.bashrc
repo forall -c "git lfs pull" && bash build/prebuilts_download.sh
hb set
hb build -f
编译成功:
hb set 用于选择编译目标,hb build -f 为全量编译。
7 附录:常用命令速查
用途 | 命令 |
激活虚拟环境 | source ~/code/oh_venv/bin/activate |
拉取依赖 + 预编译 | repo forall -c "git lfs pull" && bash build/prebuilts_download.sh |
选择编译目标 | hb set |
执行全量编译 | hb build -f |
停止 WSL | wsl --shutdown |
迁移 WSL 到 E 盘 | wsl --manage Ubuntu --move "E:\WSL\Ubuntu" |
查看 WSL 状态 | wsl -l -v |
查看安装的 Python 模块 | pip3 list |
