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

2. OpenHarmony源码下载

OpenHarmony源码下载(windows, ubuntu)

现在的 OpenHarmony 4.0 源码已经有了,在 https://gitee.com/openharmony 地址中,描述了源码获取的方式。下来先写下 windows 的获取方式,再写 ubuntu 的获取方式。

获取源码前,还需要的准备工作是在 gitee 上添加 ssh 公钥来保证 PC 可以正确发起请求并下载。具体的生成 ssh 公钥方式,在 gitee 官网上按照步骤操作就可以了。

Windows

gitee 描述的下载方式是基于 ubuntu 或者说是 Linux 的下载方式。在 windows 平台下的下载方式没有做出介绍。

我自己尝试了 windows 下的下载方式,与下载 android 源码下载方式雷同。

整个 openharmony 4.0 代码在27.6GB大小。

前提

在下载源码前,安装 windows 下 git 工具,还有 python (用于执行下载程序) 。

在**合适**的位置创建放置源码的目录,进入目录,下载 openharmony 的仓库。

git clone https://gitee.com/openharmony/manifest.git

在 clone 结束后,可以在目中看到 manifest 目录。

在 git-bash 工具中进入到 manifest 目录,查看当前的工作分支默认是 master

将源码分支切换到要下载的分支。这里下载 openharmony 4.0 代码。

$ git branch
* OpenHarmony-4.0-Releasemaster

下载

在切换分支后,可以在 manifest 的目录下,打开查看 default.xml 文件。

<?xml version="1.0" encoding="UTF-8"?>
<manifest><remote fetch="." name="origin" review="https://openharmony.gitee.com/openharmony/"/><default remote="origin" revision="OpenHarmony-4.0-Release" sync-j="4" /><include name="ohos/ohos.xml" /><include name="chipsets/all.xml" />
</manifest>

内容中包含了下载两个目录分别是 :

  • ohos openharmony 系统的软件代码。
  • chipsets 是根据芯片适配的底层代码。

要下载的是 ohos 目录下文件列举的源码结构。

创建 download 的 py 文件

nanifest 统计目录下创建 download.py 文件,文件内容如下。

import xml.dom.minidom
import os
from subprocess import call# 1. 修改为源码要保存的路径
rootdir = "D:/OHOSP/OHOS"# 2. 设置 git.exe 安装的路径
git = "D:/DevTools/Git/bin/git.exe"# 3. 修改为 manifest 中 default.xml 文件内容中 ohos.xml 路径
dom = xml.dom.minidom.parse("D:/OHOSP/manifest/ohos/ohos.xml")
root = dom.documentElement# 4. 拼接下载地址
prefix = "git clone https://gitee.com/openharmony/"
suffix = ".git"if not os.path.exists(rootdir):os.mkdir(rootdir)for node in root.getElementsByTagName("project"):os.chdir(rootdir)d = node.getAttribute("path")last = d.rfind("/")if last != -1:d = rootdir + "/" + d[:last]if not os.path.exists(d):os.makedirs(d)os.chdir(d)cmd = prefix + node.getAttribute("name") + suffixprint(cmd)call(cmd)

打开python的IDLE工具

打开 python 的 IDLE 工具。

File > Open 打开上面创建的 download 文件。

运行这段程序,等待源码下载结束。

Ubuntu

Ubuntu 下,下载的方式使用的工具是 repo,因此需要安装工具 git,git lfs 和 repo。

还需要 ubuntu 上安装了 python,如果安装了 python3,大概率还需要安装 python-is-python3。

安装 git

$ sudo apt get install git

安装 repo

$ mkdir ~/bin
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

执行完上面指令,repo 也就安装上了。

若果 ubuntu 系统是 22.04 或更高版本,可以直接使用 apt 包管理器安装。

$ sudo apt install repo

安装 git lfs,若只安装了 git,没有安装 git lfs 工具,在下载过程中会出错,提示未安装 git lfs 。

  1. 添加包下载 apt/deb 库。

    $ curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
    
  2. 执行 apt/deb 安装指令。

    $ sudo apt-get install git-lfs
    
  3. 验证是否安装成功。

    $ git lfs --version
    

下载 4.0 代码

使用 repo 工具下载 openharmony 4.0 代码

$ repo init -u git@gitee.com:openharmony/manifest.git -b OpenHarmony-4.0-Release --no-repo-verify
$ repo sync -c  # 下载版本库
$ repo forall -c 'git lfs pull' # 没有check进度,等待下载完成就可以了

相关文章:

  • 腾讯云标准型SA5云服务器CPU性能测评
  • PTA 斯诺克
  • excel自己记录
  • 【Java 进阶篇】Jedis:让Java与Redis轻松对话的利器
  • 《云计算:云端协同,智慧互联》
  • Qt ListWidget
  • Java JDBC中ResultSet的详细说明
  • Ubuntu18 Opencv3.4.12 viz 3D显示安装、编译、使用、移植
  • Arduino驱动PT100数字K型高温传感器(温湿度传感器)
  • 数据库基础入门 — SQL排序与分页
  • 武汉光庭公司地图引擎开发工程师24秋招三场面试完整流程
  • 使用C++从0到1实现人工智能神经网络及实战案例
  • UE 材质,如何只取0~1之间的值,其余值抛弃
  • Vuejs+ElementUI搭建后台管理系统框架
  • Jmeter脚本录制:抓取IOS手机请求包
  • 自己简单写的 事件订阅机制
  • CSS魔法堂:Absolute Positioning就这个样
  • eclipse的离线汉化
  • iBatis和MyBatis在使用ResultMap对应关系时的区别
  • input实现文字超出省略号功能
  • javascript面向对象之创建对象
  • Javascript设计模式学习之Observer(观察者)模式
  • JS字符串转数字方法总结
  • leetcode讲解--894. All Possible Full Binary Trees
  • mysql_config not found
  • PHP面试之三:MySQL数据库
  • Python学习之路13-记分
  • 安装python包到指定虚拟环境
  • 从零开始学习部署
  • 翻译--Thinking in React
  • 聚簇索引和非聚簇索引
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 如何胜任知名企业的商业数据分析师?
  • 听说你叫Java(二)–Servlet请求
  • d²y/dx²; 偏导数问题 请问f1 f2是什么意思
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • #图像处理
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (pojstep1.3.1)1017(构造法模拟)
  • (STM32笔记)九、RCC时钟树与时钟 第二部分
  • (动态规划)5. 最长回文子串 java解决
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (力扣)1314.矩阵区域和
  • (三) diretfbrc详解
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (循环依赖问题)学习spring的第九天
  • (一)RocketMQ初步认识
  • (一)十分简易快速 自己训练样本 opencv级联haar分类器 车牌识别
  • (已解决)报错:Could not load the Qt platform plugin “xcb“
  • (转)【Hibernate总结系列】使用举例
  • (转)memcache、redis缓存
  • (最新)华为 2024 届秋招-硬件技术工程师-单板硬件开发—机试题—(共12套)(每套四十题)
  • .Net多线程总结
  • .NET设计模式(8):适配器模式(Adapter Pattern)