前言
安装环境,默认你是有Linux系统的,不论是VM虚拟机、Docker或是WSL,也不对Linux系统进行要求。
此教程的环境如下:Ubuntu18.04、Anaconda(Python3.8.5)
注意:搭建下的第一步骤改bash很关键!!!
不要认为自己用了很久的系统没问题不检查,一定要检查一下!!!
搭建
将Linux shell改为bash(非常重要)
查看当前的shell 是否为 bash:
如果显示是 /bin/bash -> bash 则跳转第二步,
如果显示是 /bin/bash -> dash 或者其他 请继续:
方法一:
- sudo dpkg-reconfigure dash
复制代码
方法二:重置 `bash` 软连接
正确显示如下:
安装Python环境(Python)
通过 `Anaconda` 安装 `Python`(推荐)
1. 可以根据我这个教程安装 `Anaconda`: [Anaconda安装不同版本Python]:https://blog.csdn.net/qq_30722795/article/details/103173704
2. 此时输入 `conda --version` 可以输出版本号,说明没问题了。
3. 然后创建一个新的环境:
- <div align="left"> conda create -n HarmonyOS python=3.8.5</div><div align="left"> # 环境名称为:HarmonyOS,Python版本为3.8.5</div><div align="left"> </div><div align="left"> conda activate HarmonyOS</div><div align="left"> # 进入该 Python环境</div><div align="left"> # 此时前面的(base) 会变成 (HarmonyOS)就对了</div><div align="left"></div>
复制代码
4. 查看`python`版本:
- <div align="left"> python --version</div><div align="left"> # 显示: Python 3.8.5 则完成!</div>
复制代码
通过命令行安装`Python` (不推荐)
Ubuntu18.04 运行如下:
- sudo apt-get install python3.8
复制代码
Ubuntu16.04 或以下 运行如下:
- <div align="left"># 安装依赖包</div><div align="left">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</div>
- <div align="left">#下载Python3.8.5安装包,用源码包安装</div><div align="left">wget <a target="_blank">https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz</a> </div><div align="left">tar -zxvf Python-3.8.5.tgz && cd Python-3.8.5.tgz</div>
- <div align="left">sudo ./configure && sudo make</div><div align="left">sudo make install</div>
复制代码
安装后查看是否为Python:
如果显示不是`python 3.8.5`,则继续:
显示:/home/long/anaconda3/envs/HarmonyOS/bin/python3.8
记住这个路径!!!
然后继续:(需要自行修改 ln -s xxxx 的第一个路径)
- <div align="left">sudo rm -rf /usr/bin/python</div><div align="left">sudo ln -s /home/long/anaconda3/envs/HarmonyOS/bin/python3.8 /usr/bin/python</div>
- <div align="left"># 此时再打印版本</div><div align="left">python --version</div><div align="left"></div>
复制代码
安装Python环境(pip3)
命令行方式:(推荐)
- <div align="left">
- </div><div align="left"># 先安装相应的初始化包</div><div align="left">sudo apt-get install python3-setuptools python3-pip-y</div>
- <div align="left">#升级pip(可选)</div><div align="left">sudo pip3 install --upgrade pip</div>
复制代码
源码包方式:(不推荐)
- <div align="left">curl <a target="_blank">https://bootstrap.pypa.io/get-pip.py</a> -o get-pip.py</div><div align="left">python get-pip.py</div><div align="left"></div>
复制代码
安装Python环境(setuptools)
- <div align="left">pip3 install setuptools</div><div align="left"></div>
复制代码
安装GUI menuconfig工具(Kconfiglib)
- <div align="left">sudo pip3 install kconfiglib</div>
复制代码
安装文件打包工具
- sudo apt-get install dosfstools mtools mtd-utils
复制代码
安装编译脚本、工具链等
1. 下载
- <div align="left">#新建一个文件夹专门存放这些文件包</div><div align="left">mkdir ~/Tools && cd ~/Tools</div>
- <div align="left">#下载 gn编译脚本</div><div align="left">wget <a target="_blank">https://repo.huaweicloud.com/har ... 3/linux/gn.1523.tar</a></div><div align="left">#下载 ninja编译脚本</div><div align="left">wget <a target="_blank">https://repo.huaweicloud.com/har ... nux/ninja.1.9.0.tar</a></div><div align="left">#下载 LLVM编译工具链</div><div align="left">wget <a target="_blank">https://repo.huaweicloud.com/har ... nux-9.0.0-34042.tar</a></div><div align="left">#下载 hc-gen驱动配置编译工具</div><div align="left">wget <a target="_blank">https://repo.huaweicloud.com/har ... -gen-0.65-linux.tar</a></div>
复制代码
2. 解压
- <div align="left">tar -xvf gn.1523.tar -C ~/</div><div align="left">tar -xvf ninja.1.9.0.tar -C ~/</div><div align="left">tar -xvf llvm-linux-9.0.0-34042.tar -C ~/</div><div align="left">tar -xvf hc-gen-0.65-linux.tar -C ~/</div><div align="left"></div>
复制代码
3.设置环境变量
- <div align="left"># 进入当前用户下的环境变量</div><div align="left">vim ~/.bashrc</div>
- <div align="left"># 把下面命令拷贝到 .bashrc 的最后面</div><div align="left">export PATH=~/gn:~/ninja:~/llvm/bin:~/hc-gen:$PATH</div><div align="left"></div>
复制代码
4.执行环境变量
- <div align="left">source ~/.bashrc</div><div align="left"></div>
复制代码
获取源码
能到这里,说明你的基础环境是没问题了,接下来就可以进行编译了!!!
下载源码:
- <div align="left">#为了环境不乱,还是新建一个单独文件夹</div><div align="left">mkdir ~/Source_Code && cd ~/Source_Code</div>
- <div align="left">#下载官方提供源码</div><div align="left">wget <a target="_blank">https://repo.huaweicloud.com/harmonyos/os/1.0/code-1.0.tar.gz</a></div>
- <div align="left">#解压源码</div><div align="left">tar -zxvf code-1.0.tar.gz && cd code-1.0</div><div align="left"></div>
复制代码
修改应用程序:
首先实例代码在源码目录:
`applications/sample/camera/app/src`
所以,继续吧年轻人!!胜利就在前方哈哈
- <div align="left">vim applications/sample/camera/app/src/helloworld.c</div><div align="left"></div>
复制代码
此时就能看到让很多人为之熟悉的`helloworld`了:
- <div align="left">#include </div><div align="left">#include "los_sample.h"</div>
- <div align="left">int main(int argc, char **argv)</div><div align="left">{</div><div align="left"> printf("************************************************");</div><div align="left"> printf(" Hello OHOS!");</div><div align="left"> printf("************************************************");</div>
- <div align="left"> LOS_Sample(g_num);</div>
- <div align="left"> return 0;</div><div align="left">}</div>
复制代码你可以随意改,比如`Hello HarmonyOS!` ,然后保存退出。
编译
最后一步:
- <div align="left">python build.py ipcamera_hi3516dv300 -b debug</div>
复制代码此时不出意外,你等待它跑到1338完成,你是可以编译成功了,成功会如下图:
结束
烧录我放到下一篇文章!!!继续期待啊!!!
如果有相关问题,欢迎留言。