前言
开篇之前先说说自己的感触。通过这次将OpenHarmony3.0烧录到Hi3516DV300上,对于初学者环境的搭建还是很有挑战性。虽然在社区已经有好多老师提供了封装好的OpenHarmony VM资源包,不过自己动手体验失败,失败,失败…成功的过程,这种滋味很美妙。
准备工作
安装VMware(16.2或其他版本)
在VMware上安装ubuntu(20.04.3或其他版本)
环境步骤
将Ubuntu shell改为bash
在Ubuntu桌面右键打开终端工具,执行如下命令,输入密码,然后选择No。
- sudo dpkg-reconfigure dash
执行如下命令,确认输出结果为bash。
- ls -l /bin/sh
使用下列更新软件包列表,并安装必要组件。
- sudo apt-get update
- sudo apt-get install software-properties-common
说明:网络不行的情况可切换源为阿里云、华为云等提供的源。
安装依赖工具
- sudo apt-get install binutils git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin ruby
说明:在安装过程中如果有问题,可分步执行。
安装Python3.8
使用以下卸载系统内置的python。
- sudo apt-get remove python3.8
安装python3.8及相关工具包。
- sudo apt-get install python3.8
- sudo apt-get install python3-pip
- sudo apt-get install python3-doc python3-tk python3-venv python-setuptools-doc
卸载自带的Python,会删除很多相关的系统依赖包,重启后会发现没有了可视化桌面等,慎重操作。
找回桌面:
- sudo apt-get install ubuntu-minimal ubuntu-standard ubuntu-desktop
设置python和python3软链接。
- sudo update-alternatives --install <link> <name> <path> <priority>
- link:指向/etc/alternatives/
的符号引用。 - name:链接组的名称。
- path:Python工具的实际路径。
- priority:优先级,数字较大的选项有较高的优先级。
- sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1
- sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1
获取标准系统源码
配置git用户信息:
- git config --global user.name "xxx"
- git config --global user.email "xxx@xxx"
- git config --global credential.helper store
安装码云repo工具:
- sudo chmod 777 /usr/local/bin/ #给/usr/local/bin设置权限
- curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo #如果没有权限,可下载至其他目录,并将其配置到环境变量中
- chmod a+x /usr/local/bin/repo
- pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
说明:如果存在上图中的WARNING,则执行下面的命令,并卸载刚才安装的requests,并重新安装。
- echo 'export PATH=/home/tuer/.local/bin:$PATH' >> ~/.bashrc
- source ~/.bashrc
- pip3 uninstall requests
- pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
通过repo+https下载OpenHarmony3.0源码。
- # 新建源码存放目录
- mkdir ~/openharmony
- cd ~/openharmony
- repo init -u https://gitee.com/openharmony/manifest.git -b refs/tags/OpenHarmony-v3.0-LTS --no-repo-verify
- repo sync -c
- repo forall -c 'git lfs pull'
同步代码需要一定的时间,请耐心等待…
获取大的文件。
执行prebuilts
在源码根目录执行以下命令,安装编译器及二进制工具(下载需要一些时间,耐心等待…)。
- bash build/prebuilts.download.sh
说明:下载的prebuilts二进制默认存放在与OpenHarmony同目录下的OpenHarmony_2.0_canary_prebuilts目录。
编译
进入源码目录,执行以下命令进行版本编译。
- ./build.sh --product-name Hi3516DV300
检查编译结果,如下表示编译成功。
说明:编译所生成的文件都归档在out/ohos-arm-release目录下,结果镜像输出在out/ohos-arm-release/packages/phone/images/目录下。
参考文献
[1] OpenHarmony官网搭建Ubuntu环境-安装包方式
[2] OpenHarmony Gitee仓库 OpenHarmony 3.0 LTS