保姆级教程:在Ubuntu 22.04上为Firefly RK3568开发板编译OpenHarmony 5.1系统镜像

张开发
2026/5/3 0:27:39 15 分钟阅读
保姆级教程:在Ubuntu 22.04上为Firefly RK3568开发板编译OpenHarmony 5.1系统镜像
从零构建OpenHarmony 5.1RK3568开发板镜像编译实战指南当拿到Firefly ROC-RK3568-PC这块性能强劲的开发板时很多开发者第一反应就是为其编译最新的OpenHarmony系统。作为国内领先的开源分布式操作系统OpenHarmony 5.1版本带来了更完善的设备支持和性能优化。但面对复杂的编译环境和工具链配置不少开发者会在第一步就碰壁。本文将手把手带你完成从Ubuntu环境准备到最终镜像生成的全过程避开那些新手常踩的坑。1. 环境准备构建稳固的编译基础编译OpenHarmony 5.1对硬件有明确要求至少16GB内存、200GB可用磁盘空间实测完整编译需要约139GB以及x86_64架构的Ubuntu 22.04系统。低于这些配置可能导致编译失败或异常中断。关键依赖安装sudo apt update sudo apt install -y git python3.8 python3-pip curl sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1配置git身份信息避免后续报错git config --global user.name YourName git config --global user.email YourEmail特别注意如果主机是ARM架构如树莓派或苹果M系列芯片需要额外安装交叉编译工具链但推荐使用x86主机以获得最佳兼容性。磁盘空间不足是编译失败的常见原因之一。建议使用df -h检查可用空间必要时挂载新硬盘并创建软链接到工作目录。2. 源码获取与工具链配置OpenHarmony使用repo工具管理多仓库代码安装步骤如下mkdir ~/bin curl https://storage.googleapis.com/git-repo-downloads/repo ~/bin/repo chmod ax ~/bin/repo echo export PATH~/bin:$PATH ~/.bashrc source ~/.bashrc获取5.1版本源码约需30-60分钟mkdir ohos5.1 cd ohos5.1 repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony-5.1-Release repo sync -c -j8安装编译工具链时常见网络超时问题可尝试bash build/prebuilts_download.sh --skip-ssl配置hb编译工具python3 -m pip install --user build/hb echo export PATH~/.local/bin:$PATH ~/.bashrc source ~/.bashrc3. RK3568专属编译配置针对Firefly开发板的特殊配置需要修改以下文件device/board/hihope/rk3568/config.json{ product_name: rk3568, device_company: rockchip, target_os: ohos, target_cpu: arm }关键编译参数对比参数类型x86主机命令ARM主机命令基础编译./build.sh --product-name rk3568./build.sh --product-name rk3568 --target-cpu arm64启用缓存添加--ccache添加--ccache调试模式添加--gn-args enable_ohos_tracetrue同左启动编译前建议执行hb clean rm -rf out ccache -C4. 编译过程监控与问题排查正常编译过程约需3-6小时视硬件配置而定期间可通过以下命令监控查看CPU/内存占用htop监控编译日志tail -f out/rk3568/build.log常见错误及解决方案ffmpeg相关错误如遇ff_hwcontext_type_vulkan未定义错误修改vim third_party/ffmpeg/ohos_config.sh在FF_CONFIG_OPTIONS中添加--disable-vulkan内存不足增加swap空间sudo fallocate -l 8G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile磁盘空间不足定期清理临时文件find out/ -name *.o -delete5. 镜像生成与烧录验证成功编译后镜像文件位于out/rk3568/packages/phone/images/关键镜像文件说明MiniLoaderAll.binRockchip专用引导加载程序uboot.imgU-Boot引导镜像boot_linux.imgLinux内核镜像system.img主系统镜像使用RKDevTool烧录时注意选择正确的Loader和配置文件。首次启动可能需要5-10分钟完成系统初始化。若遇到启动卡logo可尝试重新擦除flash后烧录sudo rkdeveloptool db MiniLoaderAll.bin sudo rkdeveloptool ul MiniLoaderAll.bin6. 进阶优化与定制开发为提升后续开发效率建议启用ccache加速二次编译echo export USE_CCACHE1 ~/.bashrc ccache -M 50G定制系统组件修改vendor/hihope/rk3568/config.json调整预装应用编辑kernel/linux/configs/linux-5.10/rk3568_defconfig配置内核调试技巧adb connect 开发板IP adb shell hilog编译OH 5.1最耗时的往往是环境配置阶段。在我的实际测试中使用32线程i9处理器和NVMe SSD的配置下完整编译耗时约2小时45分钟而同样的代码在虚拟机中可能需要6小时以上。建议开发者尽量使用物理机而非虚拟机进行编译。

更多文章