前言
在 大喵 的 Harmony 开始支持 Flutter ,聊聊 Harmony 和 Flutter 之间的因果 - 掘金 (juejin.cn) 提到已经有 针对 OpenHarmony 的 Flutter 版本已经开源。
OpenHarmony-SIG/flutter_flutter (gitee.com)
但是只支持在 linux
上面编译。
而 Windows 上面有 WSL(Windows Subsystem for Linux), 我们可以很方便的获得 linux
环境。
OpenHarmony-SIG/flutter_flutter (gitee.com) 和 OpenHarmony-SIG/flutter_engine (gitee.com) 的文档写的比较简单,很多东西需要 openharmony 官方文档中找到的查找 。坑我都踩过了,大家可以按照我的步骤,避免走冤枉路。
WSL
- 设置=》控制面板 =》程序 =》启动或关闭 Windows 功能
确保 适用于 Linux 的 Windows 子系统
和 虚拟机平台
开启。
- 去微软商店中搜索
ubuntu
,我安装的是Ubuntu 22.04.2 LTS
版本
-
安装完毕之后,打开
Ubuntu 22.04.2 LTS
,第一次打开会让你创建账号和密码。 -
对于习惯图形化的我来说,能少敲命令肯定更愿意少敲。所以打开你的
vscode
,安装插件WSL
。顺手你可以把Flutter
插件也安装了。
这样子,通过 vscode
打开 WSL
就这样子的。
我们的项目到时候就都放在 home/zmtzawqlp
下面。
环境
apt 国内源
这个其实没有配置,因为后面也需要代理翻墙,如果你需要设置的话,按照下面操作。
# 备份
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
# 修改
sudo vim /etc/apt/sources.list
内容可以从下面复制
ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
设置好之后,执行下sudo apt update
安装需要的库
# 编译jar 用 11
sudo apt install default-jdk
# 鸿蒙的 ohsdkmgr 命令要用 17, 等后面编译了 jar 之后再切换到 17
# sudo apt install openjdk-17-jdk
# linux
sudo apt install unzip
sudo apt install npm
sudo apt install cmake
sudo apt install clang
sudo apt install pkg-config
sudo apt install libgtk-3-dev
sudo apt install ninja-build
去下载 node-v14.19.1-linux-x64.tar.xz
和 gradle-7.1-bin.zip
解压之后。
你的用户下面有一个 .bashrc
文件,vscode
里面直接打开,文件最后填入
# grade
export PATH=/home/zmtzawqlp/ohos/tools/gradle-7.1/bin:$PATH
# nodejs
export NODE_HOME=/home/zmtzawqlp/ohos/tools/node-v14.19.1-linux-x64
export PATH=$NODE_HOME/bin:$PATH
保存,并且执行source .bashrc
使之生效。
代理
以 Clash
为例子,打开 Allow LAN
和 System Proxy
。
在 .bashrc
最后添加以下配置,保存,并且执行source .bashrc
使之生效。
# 代理
hostip=$(cat /etc/resolv.conf |grep -oP '(?