文章源于电子发烧友
一、开发平台选择
我使用的是官方指示的默认环境(虚拟机ubuntu20+windows)
虚拟机使用vmware/docker(群里老哥力荐,操作方法见上面的链接)都可,或者使用(阿里云/华为云...)云服务器。
二、搭建环境
以下是linux和windows环境的配置。(都要进行哦~)
(一)、Linux端
主要是获取各种编译工具,下面的指令逐条执行即可。
1、更新镜像源
2、修改shell为bash
ubuntu20默认shell为dash(使用`ls -l /bin/sh`可看到所用shell类型),需要进行修改(软链接)。
- sudo rm -rf /bin/sh
- sudo ln -s /bin/bash /bin/sh
复制代码
3、获取编译资源
获取压缩包(gcc_riscv32-linux、python3.8、gn、ninja)和Scons,压缩包执行解压指令 `tar xvf xxx` 即可。
- wget https://repo.huaweicloud.com/harmonyos/compiler/gcc_riscv32/7.3.0/linux/gcc_riscv32-linux-7.3.0.tar.gz
- wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz
- wget https://repo.huaweicloud.com/harmonyos/compiler/gn/1523/linux/gn.1523.tar
- wget https://repo.huaweicloud.com/harmonyos/compiler/ninja/1.9.0/linux/ninja.1.9.0.tar
- //安装Scons
- sudo apt install scons -y
复制代码
设置系统环境变量。
- //解压包
- tar -xvf gn.1523.tar -C ~/
- tar -xvf ninja.1.9.0.tar -C ~/
- tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~/
复制代码须知: Hi3861平台仅支持使用libgcc运行时库的静态链接,不建议开发者使用libgcc运行时库的动态链接,会导致商业分发时被GPL V3污染。
执行指令`vim ~/.bashrc`,在文件底部按下'o'键新建一行追加以下内容。
- export PATH=~/gn:$PATH
- export PATH=~/ninja:$PATH
- export PATH=~/gcc_riscv32/bin:$PATH
复制代码最后记得执行指令使环境变量生效。
4、搭建python开发环境
- //查看Python版本号
- python3 --version
- //查看ubuntu版本
- cat /etc/issue
- //若版本为18+,则
- sudo apt install python3.8
- //若版本为16,则
- sudo apt-get install gcc && sudo apt-get install g++ && sudo apt-get install make && sudo apt-get install zlib* && sudo apt-get install libffi-dev
- tar -xv*** Python-3.8.5.tgz && cd Python-3.8.5 && sudo ./configure && sudo make && sudo make install
- //确认版本并进行链接
- which python3.8
- cd /usr/bin && sudo rm python && sudo ln -s /usr/local/bin/python3.8 python && python --version
- //安装pip3包
- sudo apt install python3-setuptools python3-pip -y
- sudo pip3 install --upgrade pip
- //安装模块setuptools
- pip3 install setuptools
- //安装GUI menuconfig工具
- sudo pip3 install kconfiglib
- //安装pycryptodome
- sudo pip3 install pycryptodome
- //安装six
- sudo pip3 install six --upgrade --ignore-installed six
- //安装ecdsa
- sudo pip3 install ecdsa
复制代码
(二)、Windows端
下载各种开发工具,其中**DevEco**有特殊安装要求,详见使用指南。但是!!对于烧录步骤,推荐编译完直接使用HiBurn工具(CSDN下载多了会需要积分TT烦恼~),一步到位!
三、Demo编译
目录为applications/sample/wifi-iot/app下的项目(具体根据该目录下BUILD.gn文件选择的项目进行编译)。
接下来一篇文章我打算对代码目录结构以及文件的功能和组成进行知识整理,便于日后项目自定义的构建以及芯片移植。
大家如果有什么问题可以在这里提出,或者在电子发烧友OHOS社区发帖子,很快就有小伙伴对你们的问题进行解答!!!