From 8ca28d72143d3ab61bf60fb0d8d96a990aeebb27 Mon Sep 17 00:00:00 2001 From: zhaoxin24742 Date: Wed, 18 Oct 2023 16:42:34 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85engine=E4=B8=AD=E6=96=87?= =?UTF-8?q?=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhaoxin24742 --- README.md | 73 +++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 46 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 0ccf79a6b9..6ca3d49c0f 100644 --- a/README.md +++ b/README.md @@ -9,44 +9,63 @@ Flutter Engine ## 构建说明: * 构建环境: -1. 目前仅支持linux下构建; - -2. 请确保当前构建环境,可以访问DEPS中配置的allowed_hosts列表。 +1. 目前支持在Linux与Mac中构建; +2. 请确保当前构建环境可以访问DEPS文件中配置的字段allowed_hosts列表。 * 构建步骤: -1. 参照https://github.com/flutter/flutter/wiki/Setting-up-the-Engine-development-environment 说明,配置好linux下构建环境; +1. 构建基础环境:可参照[官网](https://github.com/flutter/flutter/wiki/Setting-up-the-Engine-development-environment); + + 需要安装的基础库: + + ``` + sudo apt install python3 + sudo apt install make + sudo apt install pkg-config + sudo apt install ninja-build + ``` + + 配置node:下载 `node` 并解压,且配置到环境变量中: -2. 获取源码,创建空文件夹engine,engine内新建.gclient文件,编辑文件: -``` -solutions = [ - { - "managed": False, - "name": "src/flutter", - "url": "git@gitee.com:openharmony-sig/flutter_engine.git", - "custom_deps": {}, - "deps_file": "DEPS", - "safesync_url": "", - }, -] -``` + ``` + # nodejs + export NODE_HOME=/home//env/node-v14.19.1-linux-x64 + export PATH=$NODE_HOME/bin:$PATH + ``` -3. 在engine目录,执行gclient sync;这里会同步engine源码、官方packages仓,还有执行ohos_setup任务; +2. 配置文件:创建空文件夹engine,engine内新建.gclient文件,编辑文件: -4. 从 http://ci.openharmony.cn/workbench/cicd/dailybuild/dailylist 每日构建中,下载ohos-sdk-full,在engine根目录下,新建文件夹 ndk/linux/4.0 ,解压ohos-sdk-full中的native文件夹到ndk/linux/4.0文件夹中; + ``` + solutions = [ + { + "managed": False, + "name": "src/flutter", + "url": "git@gitee.com:openharmony-sig/flutter_engine.git", + "custom_deps": {}, + "deps_file": "DEPS", + "safesync_url": "", + }, + ] + ``` -5. engine目录,执行make,既可以开始构建支持ohos设备的flutter engine。 +3. 同步代码:在engine目录,执行`gclient sync`;这里会同步engine源码、官方packages仓,还有执行ohos_setup任务; +4. 下载sdk: 在[每日构建](http://ci.openharmony.cn/workbench/cicd/dailybuild/dailylist)下载ohos-sdk-full,在engine根目录下,新建文件夹 ndk/linux/4.0,解压ohos-sdk-full中的native文件夹并放置到ndk/linux/4.0文件夹中; + +5. 开始构建:engine目录,执行`make`,即可开始构建支持ohos设备的flutter engine。 ## embedding层代码构建指导 -1. 编辑shell/platform/ohos/flutter_embedding/local.properties, - sdk.dir=\ - nodejs.dir=\ - +1. 编辑shell/platform/ohos/flutter_embedding/local.properties: + + ``` + sdk.dir= + nodejs.dir= + ``` + 2. 在shell/platform/ohos/flutter_embedding目录下,执行 -``` -./hvigorw --mode module -p module=flutter@default -p product=default assembleHar -``` + ``` + ./hvigorw --mode module -p module=flutter@default -p product=default assembleHar --no-daemon + ``` 3. har文件输出路径为:shell/platform/ohos/flutter_embedding/flutter/build \ No newline at end of file -- Gitee