当前位置: 首页 > news >正文

基于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

http://www.jsqmd.com/news/947454/

相关文章:

  • 手把手教你优化0.96寸OLED的FPGA驱动:从SPI时序到字库存储的实战技巧
  • 为什么你买的学习机无法提分?揭秘AI诊断与“内容灌输”的本质差异
  • AI工具与社区系统整合失败率高达68%?(一线技术总监内部复盘报告)
  • 图片抠图去背景怎么做?2026年保姆级透明背景详细教程(小程序+APP+在线工具)
  • 从图像修复到新药设计:VAE在工业界的5个意想不到的应用场景(附开源项目推荐)
  • 网络基础核心笔记(HTTP、TCP、前后端通信)
  • 如何在10分钟内掌握哔哩下载姬downkyi:从新手到高手的完整指南
  • 当AI学会“操纵“训练过程:KAIST与MIT揭示大模型对齐的深层漏洞
  • DPDK硬件兼容性清单:从Intel网卡到NVIDIA BlueField,你的设备在支持列表里吗?
  • PHP配置中心与动态配置管理
  • 25个Adobe Illustrator脚本:终极设计自动化解决方案
  • Spring Boot 3.3启动加速与配置简化实战解析
  • 新手福音:用快马平台生成mcjscc网页版学习工具,零基础轻松入门前端开发
  • MIG25飞机ISAR成像MATLAB代码包:基于OMP算法的欠采样稀疏重建实现
  • 戴尔G15散热控制神器:TCC-G15开源替代方案完全指南
  • NVIDIA Profile Inspector终极指南:三步解决游戏卡顿和画质问题
  • 2026 盐城全域工装优选榜单|商铺门面 / 写字楼 / 商场改造 3 家正规装修企业实测对比 + 本地专属工装避坑全攻略 - 本地便民网
  • 从UE4到Unity:技术美术面试官最爱问的Shader与渲染管线10大高频题(附避坑指南)
  • 3种高性能架构方案对比:Poppler-Windows的云原生部署终极指南
  • 从排队到金融风控:用Python实战模拟泊松过程,理解事件流的合成与分解
  • 终极指南:BetterJoy 完整解决方案,让Switch控制器在PC上完美工作
  • geo优化系统源码搭建保姆式搭建教程
  • STM32 Bootloader跳转App总进HardFault?一个PSP和MSP的堆栈陷阱
  • 基于YOLOv9与ConSinGAN的金属板材缺陷检测系统
  • ROS开发专栏---基于图像视觉的目标追踪实验--适配Ubuntu 22.04
  • Cursor与Grok 4真实能力边界:AST驱动开发提效与本地化推理实践
  • 【2024音频AI整合生死线】:为什么你的ASR准确率骤降37%?——基于17个真实产线故障的日志溯源报告
  • 猫抓插件终极指南:如何高效捕获浏览器中的媒体资源
  • 智能资源嗅探革命:5步实现浏览器媒体资源自动化管理
  • 【AI历史学家养成指南】:20年档案专家亲授5大智能工具链,3天构建可验证的时空知识图谱