阅读 190

鸿蒙设备开发环境搭建-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


文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐