#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建

闲云野鹤s
发布于 2020-12-14 17:35
浏览
0收藏

首先本篇报告共计分如下几部分:
1、 虚拟机安装配置。
2、 Linux下编译环境安装与配置
3、 windows端编译以及烧录程序安装与配置
4、 鸿蒙系统源码下载、编译、烧写。


一、虚拟机安装配置


看论坛与群里面大家使用虚拟机普遍是用的vmware,而我习惯用Oracle 的virtualbox,有两个原因,一个是体量小,安装方便,另外一个主要原因是免费软件,不需要像vmware需要和谐。当然论坛有大侠依托vmware安装了ubuntu 20.4并且将编译环境配置好了,这样可以用vmware player即可,但本着学习的态度,凡事走一遍,熟悉了对后续开发有好处,所以自己搭建了一遍开发环境,中间踩了不少坑,此报告主要描述一下使用virtualbox安装ubuntu 20.4 以及一些关键配置。


1)首先在virtualbox 官网https://www.virtualbox.org/ 根据提示下载最新版,可根据自己系统选择相应版本,一般windows系统选择VirtualBox-6.1.14-140239-Win.exe

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

同样在https://ubuntu.com/download/desktop网站下载ubuntu-20.04.1-desktop-amd64.iso文件备用

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

   2)下载完成后直接双击,如果无特殊情况,一路默认配置安装即可。安装后软件打开如界面如下

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

   3)选择新建,在弹出框里填入虚拟机名称,文件夹为虚拟机文件存放位置,可根据自己实际情况填写,其他选项按照下图配置,然后选择下一步。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

4)内存大小可根据电脑配置情况设置,基本上大于2G即可,当然越大越好,但是还要结合电脑物理内存大小考虑,一般8g内存电脑分3g即可。然后下一步是虚拟硬盘选项,选“现在创建虚拟硬盘”然后下一步。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

5) 如下图选择后,下一步进入虚拟硬盘存储方式,选择动态分配后选择下一步,动态分配可以避免选择“固定大小”后分配的空间太小无法扩展的问题。然后继续下一步

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

  选择虚拟硬盘文件存放目录后点击创建,虚拟机基本创建完毕。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

6) 如下图创建完后,在左侧单击新创建虚拟机,在右侧上方选择设置,然后在设置界面选择网络。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

进入网络配置界面,选择启用网络,连接方式请一定选择“桥接网卡”,此方式可以实现虚拟机与宿主机双向网络通信,其他方式无法双向通信,影响后面虚拟机跟宿主机之间文件共享。选择“ok”确认配置。三种网络连接方式的区别如下

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

7)虚拟机创建后,点击“设置”右边的启动,因为虚拟机建立后等同于一台未安装系统的电脑,所以启动后会以如下界面提示无启动盘。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

单击右侧文件夹图标进入虚拟光盘选择界面。选择“注册”,浏览电脑文件并如下图选择下载好的ubuntu系统 iso光盘镜像,注册后选择新注册虚拟光盘作为启动盘。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

选择启动后等待片刻虚拟机进入如下界面,选择右侧install ubuntu安装linux系统。Ubuntu 20.4安装网上有很多教程,可以参照,基本上默认选项即可。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

8)安装完毕后进入ubuntu,如果按照上述安装方式,并且宿主即可以上网,那此时虚拟机也能够连接到网络,可以打开默认安装的Firefox浏览器确认一下。
后续可能会用到root用户,默认root用户为设置密码,可按照如下步骤设置。


给root用户设置密码:
命令:sudo passwd root
输入密码,
并确认密码。
重新输入命令:su root
然后输入密码:
就可以可以切换到root权限了。


9)安装SSH服务:ubuntu默认安装不包含ssh,可以按照链接https://www.cnblogs.com/asyang1/p/9467646.html安装配置SSH服务。论坛里免介绍的PUTTY以及HUAWEI DevEco Device Tool使用终端方式连接ubuntu虚拟机均需要使用SSH服务。此处请注意如果上边6)里面的连网方式选了默认的NAT模式,虽然ssh服务安装正确仍然不能访问虚拟机,需要修改联网方式。


10)samba共享文件服务:本来virtualbox增强功能安装后可以将windows系统下文件夹挂载到linux下,但是尝试过挂载后的windows文件夹因为不是linux原生文件系统,无法编译HarmonyOS,所以还是使用官方教程建议方式,使用samba服务,讲linux文件夹共享给windows共享。参照连接https://blog.csdn.net/mvp_Dawn/article/details/105847485,配置samba实现文件夹共享,并可以讲共享文件夹映射为网络驱动器。
  至此linux虚拟机基本的系统安装设置就结束了。
 
二、Linux下编译环境安装与配置


Linux下编译环境安装与配置主要还是参照官方Hi3861开发板“环境搭建”连接https://device.harmonyos.com/cn/docs/start/introduce/oem_quickstart_3861_build-0000001054781998


过程中有几点要注意的描述如下:
1) 交叉编译器gcc_riscv32需要下载后通过共享文件夹传入ubuntu下安装。
2) Python直接采用 sudo apt-get install python3.8 安装
3) Kconfiglib、pycryptodome、six、ecdsa均可以现在最新版安装,测试最新版安装后可以正常使用。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

4) 需要修改环境变量一定要确认修改正确有效。否则影响源码编译。


三、windows端编译以及烧录程序安装与配置


 windows下主要是安装安装Visual Studio Code, Node.js,JDK,hpm,DevEco Device Tool插件,C/C++插件可以参照官方DevEco Device Tool“环境准备”页面:
https://device.harmonyos.com/cn/docs/ide/user-guides/tool_install-0000001050164976#ZH-CN_TOPIC_0000001050164976__section4336315185716
过程中有几个坑要注意一下,描述如下:


1、 安装Node.js后添加环境变量“NODE_PATH变量,值为:C:\Users\{userName}\AppData\Roaming\npm\node_modules,其中userName请替换为实际的用户名称“中,环境变量路径一定不能有多余的空格,否则后续利用DevEco Device Tool下载程序会出现“Load serialPort,@searialport/parser-readline faiLED”,

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

2、 安装JDK:JDK现在最新版为jdk-15_windows-x64_bin.exe,貌似有问题,后来安装了jdk-11。


3、 安装hpm:我安装的时候碰到根没有‘package.json’提示
npm WARN saveError ENOENT: no such file or directory,open 'C:\Users\xxx\package.json'
npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\xxx\package.json'
npm WARN xxx No description
npm WARN xxx No repository field.
npm WARN xxx No README data
npm WARN xxx No license field.
可以参照https://www.jianshu.com/p/2c893406398a运用“npm init”命令处理,然后一路enter即可。
安装hpm还会碰到“npm WARN deprecated core-js@2.6.11:core-js@<3”的问题,就是说core-js版本太低的意思,可以参照https://juejin.im/post/6844904065944518669连接使用如下命令解决。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

  其他项安装按照官方教程基本没有问题。
 
四、鸿蒙系统源码下载、编译、烧写


整体来说可以参照“Hi3861开发板第一个示例程序” https://device.harmonyos.com/cn/docs/start/introduce/oem_wifi_start_helloword-0000001051930719
整理如下几点:


1、 鸿蒙系统源码下载地址:https://device.harmonyos.com/cn/docs/start/get-code/oem_sourcecode_guide-0000001050769927,“全量代码”是源代码,后续系统编译需要的就是这个,下载后文件名为“code-1.0.tar.gz”。仅仅 测试软件烧录,可以直接下载“Hi3861解决方案(二进制)”,里面是编译过的3861开发板最终文件可以直接烧录。
  #2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

源码下载后可以使用共享文件夹传到linux里面。建议将共享文件夹即代码编译目录放在“~/home/xxxusername”目录下面。放在其他目录下有编译会有权限问题引发的编译不成功的情况。


2、 编译成功后在源码根目录下” ./out/wifiiot/”找到编译后的bin文件。按照教程烧录,出现如下问题请参照第三章第1小节处理。#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

  出现如下错误,请按顺序选择命令行默认shell为“command promipt”

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

出现如下错误,请确认上面画圈出文件目录是正确的。

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

烧录串口选择位置如下图所示,界面黑的,新东西看多了我居然没有第一时间看到.

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

最终烧录成功的提示如下图:

#2020征文-开发板#基于HiSpark Wi-Fi IoT套件_2-环境搭建-鸿蒙开发者社区

 

总结:
  从开始装虚拟机软件到编译烧录成功,历时三天,当然是断断续续,越坑无数。总结来讲,作为一个新出的系统一个新的硬件架构,资料还是满全的。这三天虽然有坑但是通过不停的百度(百度搜索立功无数,赞一个)还是解决了所有问题。整体来说,对于新手官方资料还不是太系统,还做不到step to step,不过各位大侠都在视频直播了,总归会越来越好的。
上边用鸿蒙系统官方现在,编译烧录后跟开发板不配套,OLED显示没了,下了官方SDK,下一步研究下官方sdk,先把板子硬件驱动起来吧。

 

标签
已于2020-12-14 17:35:09修改
收藏
回复
举报
回复
    相关推荐