鸿蒙设备开发环境搭建-2021-3
1.下载安装VM,下载ubuntu20.4,并在vm上运行ubuntu20.04
VM下载安装请自行搜索
华为ubuntu镜像下载:https://repo.huaweicloud.com/ubuntu-releases/20.04/ubuntu-20.04.2.0-desktop-amd64.iso
如果运行ubuntu出现“不满足在启动Hyper-v。。。。”,在CMD执行 bcdedit /set hypervisorlaunchtype off
虚拟机我使用了40G硬盘
期间会下载文件,需要等时间
如果想切换软件源可以在 设置->关于->软件更新->ubuntu软件->下载自 切换成阿里源,然后关闭后会提示重新载入
之后下载语言包或者其他东西会快很多
安装VM Tool
然后执行解压出来的vmware-install.pl文件,一路过去,之后重启就行了
安装环境必要的软件
sudo service ssh start sudo apt-get install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev net-tools openssh-server vim git curl samba samba-common
添加 samba
mm@mm-virtual-machine:~$ sudo vim /etc/samba/smb.conf ## 在最后面添加 [work] comment = samba home directory path = /home/mm/ ## 路径 public = yes browseable = yes public = yes writeable = yes read only = no valid users = mm create mask = 0777 directory mask = 0777 #force user = nobody #force group = nogroup available = yes mm@mm-virtual-machine:~$ sudo smbpasswd -a mm ## 设置密码 mm是名字 mm@mm-virtual-machine:~$ sudo service smbd restart ## 重启
2.开始鸿蒙环境搭建
1.将Linux shell改为bash
mm@mm-virtual-machine:~$ ls -l /bin/sh lrwxrwxrwx 1 root root 4 3月 14 20:39 /bin/sh -> dash mm@mm-virtual-machine:~$ sudo dpkg-reconfigure dash ##会弹出框选择no [sudo] mm 的密码: 正在删除 通过 dash 从 /bin/sh 到 /bin/sh.distrib 的转移 正在添加 通过 bash 从 /bin/sh 到 /bin/sh.distrib 的转移 正在删除 通过 dash 从 /usr/share/man/man1/sh.1.gz 到 /usr/share/man/man1/sh.distrib.1.gz 的转移 正在添加 通过 bash 从 /usr/share/man/man1/sh.1.gz 到 /usr/share/man/man1/sh.distrib.1.gz 的转移 mm@mm-virtual-machine:~$ sudo rm -rf /bin/sh mm@mm-virtual-machine:~$ sudo ln -s /bin/bash /bin/sh mm@mm-virtual-machine:~$
2.安装Python环境
mm@mm-virtual-machine:~$ python3 --version Python 3.8.5 mm@mm-virtual-machine:~$ sudo apt-get install python3-setuptools python3-pip -y mm@mm-virtual-machine:~$ sudo pip3 install --upgrade pip mm@mm-virtual-machine:~$ sudo pip3 install setuptools mm@mm-virtual-machine:~$ sudo pip3 install kconfiglib mm@mm-virtual-machine:~$ sudo pip3 install pycryptodome mm@mm-virtual-machine:~$ sudo pip3 install six --upgrade --ignore-installed six mm@mm-virtual-machine:~$ sudo pip3 install ecdsa
在安装期间出现红色报错可以更换国内源
mkdir ~/.pip vim ~/.pip/pip.conf ## pip.conf文件内容 [global] timeout = 6000 index-url = https://pypi.tuna.tsinghua.edu.cn/simple trusted-host = pypi.tuna.tsinghua.edu.cn
或者执行命令时候带上源名称
3.安装GN/ninja/LLVM
mm@mm-virtual-machine:~$ wget https://repo.huaweicloud.com/harmonyos/compiler/gn/1717/linux/gn-linux-x86-1717.tar.gz mm@mm-virtual-machine:~$ mkdir ~/gn mm@mm-virtual-machine:~$ tar -xvf gn-linux-x86-1717.tar.gz mm@mm-virtual-machine:~$ vim ~/.bashrc ## 在文件最后一行添加 export PATH=~/gn:$PATH
mm@mm-virtual-machine:~$ wget https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.9.0/linux/ninja.1.9.0.tar mm@mm-virtual-machine:~$ tar -xvf ninja.1.9.0.tar mm@mm-virtual-machine:~$ vim ~/.bashrc ## 在文件最后添加 export PATH=~/ninja:$PATH
mm@mm-virtual-machine:~$ wget https://repo.huaweicloud.com/harmonyos/compiler/clang/9.0.0-36191/linux/llvm-linux-9.0.0-36191.tar mm@mm-virtual-machine:~$ tar -xvf llvm-linux-9.0.0-36191.tar mm@mm-virtual-machine:~$ vim ~/.bashrc ## 在文件最后添加 export PATH=~/llvm/bin:$PATH
source ~/.bashrc ##生效环境变量
4.下载源代码
为了获取最新的代码直接从代码仓库获取
mm@mm-virtual-machine:~/tool$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1000 mm@mm-virtual-machine:~/tool$ git config --global user.name "mm" mm@mm-virtual-machine:~/tool$ git config --global user.email "110@qq.com" mm@mm-virtual-machine:~/tool$ git config --global credential.helper store root@mm-virtual-machine:/home/mm/tool# curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo root@mm-virtual-machine:/home/mm/tool# chmod a+x /usr/local/bin/repo root@mm-virtual-machine:/home/mm/tool# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests ## 创建一个harmonyos的文件夹保存代码 mm@mm-virtual-machine:~/harmonyos$ repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify mm@mm-virtual-machine:~/harmonyos$ repo sync -c
5.安装hb
mm@mm-virtual-machine:~/harmonyos$ python3 -m pip install --user build/lite mm@mm-virtual-machine:~/harmonyos$ vim ~/.bashrc ## 在文件最后添加 export PATH=~/.local/bin:$PATH mm@mm-virtual-machine:~/harmonyos$ source ~/.bashrc mm@mm-virtual-machine:~/harmonyos/code-314$ hb -h usage: hb OHOS build system positional arguments: {build,set,env,clean,deps} build Build source code set OHOS build settings env Show OHOS build env clean Clean output deps OHOS components deps optional arguments: -h, --help show this help message and exit
6 Hi3861搭建环境
mm@mm-virtual-machine:~/harmonyos$ sudo apt-get install scons -y mm@mm-virtual-machine:~/harmonyos$ scons -v SCons by Steven Knight et al.: script: v3.1.2.bee7caf9defd6e108fc2998a2520ddb36a967691, 2019-12-17 02:07:09, by bdeegan on octodog engine: v3.1.2.bee7caf9defd6e108fc2998a2520ddb36a967691, 2019-12-17 02:07:09, by bdeegan on octodog engine path: ['/usr/lib/scons/SCons'] Copyright (c) 2001 - 2019 The SCons Foundation mm@mm-virtual-machine:~/harmonyos$ sudo apt-get install gcc && sudo apt-get install g++ && sudo apt-get install flex bison && sudo apt-get install texinfo mm@mm-virtual-machine:~/tool$ mkdir gcc mm@mm-virtual-machine:~/tool$ cd gcc mm@mm-virtual-machine:~/tool/gcc$ git clone --recursive https://github.com/riscv/riscv-gnu-toolchain
上面这条下载很慢
mm@mm-virtual-machine:~/tool/gcc$ git clone https://github.com/riscv/riscv-gnu-toolchain mm@mm-virtual-machine:~/tool/gcc$ cd riscv-gnu-toolchain mm@mm-virtual-machine:~/tool/gcc/riscv-gnu-toolchain$ git submodule update --init --recursive ## CTRL+C暂停下载 mm@mm-virtual-machine:~/tool/gcc/riscv-gnu-toolchain$ ls -al mm@mm-virtual-machine:~/tool/gcc/riscv-gnu-toolchain$ chmod 777 .gitmodules mm@mm-virtual-machine:~/tool/gcc/riscv-gnu-toolchain$ vim .gitmodules ## 文件内容 mm@mm-virtual-machine:~/tool/gcc/riscv-gnu-toolchain$ sudo git submodule sync mm@mm-virtual-machine:~/tool/gcc/riscv-gnu-toolchain$ sudo git submodule update --init --recursive