diff --git a/zh-cn/device-dev/get-code/gettools-acquire.md b/zh-cn/device-dev/get-code/gettools-acquire.md index 1d5ad5209743da7148b0010188008b8887c4dd31..2ff65bbf901a8909973efd1c56fe177e8d9f1b82 100644 --- a/zh-cn/device-dev/get-code/gettools-acquire.md +++ b/zh-cn/device-dev/get-code/gettools-acquire.md @@ -13,111 +13,156 @@ OpenHarmony为开发者提供了两种Docker环境,以帮助开发者快速完 | 系统类型 | 运行平台 | Docker镜像仓库 | 标签 | | -------- | -------- | -------- | -------- | -| 轻量和小型系统/标准系统(独立Docker环境) | Ubuntu/Windows | swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker | 1.0.0 | +| 标准系统(独立Docker环境) | Ubuntu/Windows | swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_standard | 3.2 | +| 小型系统(独立Docker环境) | Ubuntu/Windows | swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_small | 3.2 | +| 轻量系统(独立Docker环境) | Ubuntu/Windows | swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_mini | 3.2 | | 轻量和小型系统(HPM Docker环境) | Ubuntu/Windows | swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker | 0.0.3 | ## 环境准备 -在使用docker环境前需要先完成以下操作: +在使用Docker环境前,需要准备源码和一些基本工具,以Ubuntu为例,您需要执行以下步骤: -1. 安装Docker,Docker安装请参考[官方指导](https://docs.docker.com/engine/install/)。 +1. 安装Docker + - 在Ubuntu中,可以使用下面的命令来安装Docker: + ``` + sudo apt install docker.io + ``` + - 其他系统的Docker安装请参考[Docker指导](https://docs.docker.com/engine/install/)。 -2. 获取OpenHarmony源码,请参考[获取源码](sourcecode-acquire.md)。 +2. 获取OpenHarmony源码 + + 请参考[获取源码](sourcecode-acquire.md)。 > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> HPM Docker环境无需单独获取源码。 -3. 请使用具备root权限的用户,或已被授予docker使用权限的用户进行后续操作。 +3. 获取使用权限 + + 为了能够使用Docker,请使用具备root权限的用户,或已被授予Docker使用权限的用户进行后续操作。在Ubuntu系统中,通常可以通过在命令前加sudo来获取root权限。在Windows系统中,您可能需要在管理员模式下运行cmd或PowerShell。 ## 独立Docker环境 -OpenHarmony的Docker镜像托管在HuaweiCloud SWR上。开发者可以通过该镜像在很大程度上简化编译前的环境配置。下文将介绍具体使用步骤。 +Docker镜像是包含了运行环境和应用程序的轻量级、可执行的软件包,OpenHarmony的Docker镜像托管在HuaweiCloud SWR上。开发者可以通过该镜像在很大程度上简化编译前的环境配置。这一部分将引导您如何在Docker环境中配置和使用OpenHarmony,下文将介绍具体使用步骤。 ### 搭建Docker环境(轻量系统和小型系统) -1. 获取Docker镜像。 - +1. 获取Docker镜像 + + 获取小型系统镜像的命令为: + ``` - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0 + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_small:3.2 ``` - -2. 进入源码根目录执行如下命令,从而进入Docker构建环境。 - ubuntu下执行: - + 获取轻量系统镜像的命令为: ``` - docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0 + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_mini:3.2 ``` - windows下执行(假设源码目录为D:\OpenHarmony): +2. 进入Docker构建环境 + + 在获取了镜像之后,您需要创建一个新的Docker容器,并进入该容器中。进入OpenHarmony源码根目录执行如下命令,从而进入Docker构建环境。 + - Ubuntu系统 - ``` - docker run -it -v D:\OpenHarmony:/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0 - ``` + ``` + # 进入小型系统Docker构建环境 + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_small:3.2 -### 编译源码(轻量系统和小型系统) + # 进入轻量系统Docker构建环境 + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_mini:3.2 + ``` -通过如下编译脚本启动轻量系统类设备(参考内存≥128KiB)和小型系统类设备(参考内存≥1MiB)的编译。下文以Hi3516平台为例说明具体编译步骤。 + - Windows系统(假设源码目录为`D:\OpenHarmony`): - 设置编译路径,选择当前路径。 - -``` -hb set - . -``` + ``` + # 进入小型系统Docker构建环境 + docker run -it -v D:\OpenHarmony:/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_small:3.2 - **图1** 设置编译界面 + # 进入轻量系统Docker构建环境 + docker run -it -v D:\OpenHarmony:/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_mini:3.2 + ``` - ![zh-cn_image_0000001153508656](figures/zh-cn_image_0000001153508656.png) + > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
+ > `docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_small:3.2` 这个命令的含义是,创建并运行一个新的OpenHarmony的Docker容器,这个容器运行在交互模式下,并且将当前目录映射到容器的/home/openharmony目录。 -> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
-> 当前开发板平台和编译界面的对应关系如下: -> -> - Hi3861:wifiiot_hispark_pegasus\@hisilicon -> -> - Hi3516:ipcamera_hispark_taurus\@hisilicon +### 编译源码(轻量系统和小型系统) +1. 启动编译脚本 -1. 选择ipcamera_hispark_taurus\@hisilicon并回车。 + 执行`docker run`命令进入Docker容器后(此时位于`/home/openharmony`路径下),您可以通过如下编译脚本启动轻量系统类设备(参考内存≥128KiB)和小型系统类设备(参考内存≥1MiB)的编译。 -2. 执行编译。 - ``` - hb build -f + python3 build.py -p {product_name}@{company} ``` -3. 查看编译结果。 - 编译结果文件生成在out/hispark_taurus/ipcamera_hispark_taurus目录下。 + 其中,`{product_name}`为当前版本支持的平台,`{company}`为`{product_name}`对应的公司名。 + + 举个例子,如果您要编译的产品为`hisilicon`下的`ipcamera_hispark_taurus`,您可以输入以下命令来启动编译: -### 搭建Docker环境(标准系统) + ``` + python3 build.py -p ipcamera_hispark_taurus@hisilicon + ``` + + 同样,如果您要编译的产品是`ohemu`下的`qemu_small_system_demo`,那么您可以输入以下命令来启动编译: -1. 获取Docker镜像。 - ``` - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0 + python3 build.py -p qemu_small_system_demo@ohemu ``` -2. 进入源码根目录执行如下命令,从而进入Docker构建环境。 +2. 查看编译结果 + + 在编译结束后,编译所生成的文件都会被存放在`out/{device_name}/`目录下,结果镜像输出在`out/{device_name}/packages/phone/images/`目录下。 + +> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
+> 如需退出Docker,执行`exit`命令即可。这个命令会停止当前的Docker容器,并返回到您的操作系统。 + +### 搭建Docker环境(标准系统) + +1. 获取Docker镜像 + + 在搭建标准系统的Docker环境前,我们也需要先获取对应的Docker镜像。具体的命令如下: ``` - docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:1.0.0 + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_standard:3.2 ``` +2. 进入Docker构建环境 + + 与之前的步骤相同,我们需要创建一个新的Docker容器,并进入该容器中。进入openharmony源码根目录执行如下命令,从而进入Docker构建环境。 + + - Ubuntu系统 + + ``` + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_standard:3.2 + ``` + + - Windows系统(假设源码目录为`D:\OpenHarmony`) + + ``` + docker run -it -v D:\OpenHarmony:/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_standard:3.2 + ``` + ### 编译源码(标准系统) - 通过如下编译脚本启动标准系统类设备(参考内存≥128MB)的编译。 +1. 启动编译脚本 + + 执行`docker run`命令进入Docker容器后(此时位于`/home/openharmony`路径下),您可以通过如下编译脚本启动标准系统类设备(参考内存≥128MB)的编译。 -``` -./build.sh --product-name {product_name} --ccache -``` + ``` + ./build.sh --product-name {product_name} --ccache + ``` -{product_name}为当前版本支持的平台。比如:hispark_taurus_standard和rk3568等。 + `{product_name}`为当前版本支持的平台。例如,您要编译的产品是`rk3568`,那么您可以输入以下命令来启动编译: -编译所生成的文件都归档在out/{device_name}/目录下,结果镜像输出在 out/{device_name}/packages/phone/images/ 目录下。 + ``` + ./build.sh --product-name rk3568 --ccache + ``` +2. 查看编译结果\ + 编译所生成的文件都归档在`out/{device_name}/`目录下,结果镜像输出在`out/{device_name}/packages/phone/images/`目录下。 > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
-> 如需退出Docker,执行exit命令即可。 +> 如需退出Docker,执行`exit`命令即可。这个命令会停止当前的Docker容器,并返回到您的操作系统。 ## 基于HPM的Docker环境 @@ -127,13 +172,16 @@ docker_dist是一个[HPM](https://hpm.harmonyos.com/)系统中的模板组件, ### 搭建Docker环境 -1. 初始化安装模板。在任意工作目录中执行以下命令。 +1. 初始化安装模板 + + 在任意工作目录中执行以下命令 ``` hpm init -t @ohos/docker_dist ``` -2. 修改publishAs。 +2. 修改publishAs + 因为获取到的是模板类型的包,要把包的类型改为需要的类型。 在当前目录下打开bundle.json文件,把"publishAs"字段的值由"template"改为"distribution"。 @@ -141,10 +189,10 @@ docker_dist是一个[HPM](https://hpm.harmonyos.com/)系统中的模板组件, 执行编译。自动安装docker只能在Ubuntu环境下执行,如果其他环境,需要用户自行安装docker,然后拉取镜像,执行编译。 -- **自动安装docker(Ubuntu环境)**
+- 自动安装docker(Ubuntu环境)
以下命令可以帮助用户自动安装docker, 拉取镜像,并且在容器中开始运行对应解决方案的拉取和编译。 - **方式一:** + 方式一: 命令后接参数指定解决方案,格式如下: @@ -155,7 +203,7 @@ docker_dist是一个[HPM](https://hpm.harmonyos.com/)系统中的模板组件, {product}为需编译的解决方案,如:\@ohos/hispark_taurus、\@ohos/hispark_aries、\@ohos/hispark_pegasus。 - **方式二:** + 方式二: 设置环境变量来选择解决方案,再执行编译命令。 @@ -180,7 +228,7 @@ docker_dist是一个[HPM](https://hpm.harmonyos.com/)系统中的模板组件, @ohos/hispark_taurus: distribution building completed. ``` -- **自行安装docker(非Ubuntu环境)**
+- 自行安装docker(非Ubuntu环境)
自行安装docker相关操作如下: