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

X86 OpenHarmony5.1.0系统移植与安装

近期在研究X86鸿蒙,通过一段时间的研究终于成功了,在X86机器上成功启动了openharmony系统了.下面做个总结和分享

1. 下载源码

获取OpenHarmony标准系统源码

repo init -u https://gitee.com/openharmony/manifest.git -b refs/tags/OpenHarmony-v5.1.0-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'

下载X86平台适配代码

git clone -b OpenHarmony-5.1.0-Release https://gitee.com/ohos-porting-communities/vendor_opc.git vendor/opc
git clone -b OpenHarmony-5.1.0-Release https://gitee.com/ohos-porting-communities/device_board_opc.git device/board/opc
git clone -b OpenHarmony-5.1.0-Release https://gitee.com/ohos-porting-communities/device_soc_opc.git device/soc/opc

2. 编译代码

执行prebuilts

bash build/prebuilts_download.sh

开始编译

./build.sh --product-name x86_general --ccache

编译成功后可以在out/x86_general/packages/phone/images/目录下看到以下image文件
在这里插入图片描述

3. 烧录系统

使用U盘进行启动:

  1. 准备一个8G以上高速U盘
  2. 使用DiskGenius将U盘转换为GUID分区表格式
  3. 使用DiskGenius分区工具分出4个分区,分区依次如下:
分区名称分区大小分区格式
boot500Mfat32
system3Gext4
vendor500Mext4
data3Gext4

在这里插入图片描述

注意:新建分区时点击详细参数,删除分区名字

在这里插入图片描述

在这里插入图片描述

  1. 直接复制device/board/opc/x86_general/loader文件夹内容到boot分区根目录

  2. 使用Linux的dd命令烧录镜像,用df确认需要烧写的分区,也就是sdx中的x,可能是a、b、c

sudo dd if=system.img of=/dev/sdx2 bs=1M
sudo dd if=vendor.img of=/dev/sdx3 bs=1M
  1. data分区为格式化空分区

  2. 插入电脑,BIOS选择U盘启动

4. 运行效果展示

在这里插入图片描述

5. 镜像文件下载

如果你也感兴趣想安装试一下,可以下载下面我编译出来的image文件进行安装
loader引导程序
Image镜像文件

参考资料

https://gitee.com/ohos-porting-communities/vendor_opc

http://www.xdnf.cn/news/13478.html

相关文章:

  • IDE(集成开发环境),集成阿里云的通义大模型
  • 京东商品详情API接口返回的JSON结构中,price字段的数据类型是什么
  • 四大LLM 微调开源工具包深度解析
  • WPF案例展示
  • Spring @Scope, @Lazy, @DependsOn, @Required, @Lookup
  • 阿里云可观测 2025 年 5 月产品动态
  • 2506C++,C++时间库与C时间
  • java使用WebMagic架构写个分布式爬虫
  • React Vue 编译/运行流程
  • 入门Scikit-learn:让机器学习像呼吸一样自然!
  • thinkphp 一个系统在同一个域名下,一个文件夹下如何区分多站点——穷人的精致规划——仙盟创梦IDE
  • 开疆智能ModbusTCP转Canopen网关连接三菱FX5u配置案例
  • 解决idea创建SpringBoot项目,会自动创建.git文件导致commit两极分化的现象。
  • 软件测试之基于博客系统项目的功能测试
  • OpenAI推出o3-Pro模型
  • Weblogic 弱口令-任意文件读取
  • 【uniapp】小程序中input输入框的placeholder-class不生效
  • 【慧游鲁博】【11】后端 · Spring Boot 集成 Python 配置
  • 跨链/Layer2交易所架构:全链互操作与ZK-Rollup优化
  • 快速上手驭码CodeRider二
  • 【VBA】把目录及子目录下所有doc/docx转换为pdf格式
  • 【一文理解】下采样与上采样区别
  • DAY 27 函数专题2:装饰器
  • 3.2 组帧
  • 嵌入式学习笔记DAY35(数据库)
  • 少量数据达到更好效果
  • 跌穿20万辆,更猛烈的价格战却导致销量暴跌,难怪电车内讧了!
  • 基于OpenCV的滑动验证码缺口识别全流程解析(2025企业级方案)
  • 基于强化学习的智能调度系统:从理论到实践
  • VSomeip库- 编译使用