SoC开发环境搭建

 

         本章节主要介绍如何搭建涂鸦 Wi-Fi 和 Wi-Fi&Bluetooth LE 系列模组二次开发的编译环境。在 Windows 上使用 VirtualBox 虚拟机软件安装 Ubuntu,通过在 Ubuntu 上安装一些编译所需的工具,就可以在 Ubuntu 上对从 Github 或涂鸦 IoT 平台上获取到的涂鸦 SDK 进行编译了

观前提醒:阅读完本章节大概需要9分钟,您也可以点击目录具体章节进行跳转。全文对如何搭建SDK模组二次开发环境作了较为详细的讲解,有需求的同学建议收藏。

一.软件下载

1.进入VirtualBox 官网,点击红色框中的链接开始下载 VirtualBox 安装包。

download_virtual_box

2.进入Ubuntu 官网,下载 Ubuntu 系统镜像,这里下载的是 Ubuntu 20.04 作为开发编译环境。

download_ubuntu

二.虚拟机软件VirtualBox安装

VirtualBox 的安装十分简单,按照 VirtualBox 软件的提示步骤,就可以成功安装了。

1.双击下载好的virtualbox安装包,出现下图界面,点击“下一步”。

VirtualBox_install_1

2.“安装功能”和“安装位置”。“安装功能”使用默认选项,一般不做改变。安装路径可以按照个人喜好进行设置。设置完成后点击”下一步”,继续安装。

如果你的电脑的C盘空间足够,选择默认目录安装即可。如果电脑C盘空间不太充足或不想安装在C盘,点击①箭头指向的“浏览”按钮对安装目录进行修改,修改完成后点击“下一步”。安装路径在选择时不建议安装路径中包含中文,避免在将来出现一些意想不到的情况。

VirtualBox_install_2

3.在“自定安装”这一步,使用系统的默认选择即可,不用做任何改变。点击”下一步”,继续安装。

VirtualBox_install_3

4.这一步骤将会提醒你在 VirtualBox 安装过程中网络可能会中断,点击”是”,继续安装。

VirtualBox_install_4

5.上述步骤配置完成后,点击“安装”,开始安装软件。

VirtualBox_install_5

6.等待几分钟后 VirtualBox 便安装完成了。点击“完成”运行 VirtualBox。

VirtualBox_install_6

三.安装虚拟机

3.1 安装虚拟机

1.VirtualBox 安装完成后,点击“新建”,开始创建虚拟机。

Ubuntu_install_1

2.名称输入Ubuntu,下面的类型和版本会自动填充为对应的选项,这里使用的 Ubuntu 镜像为 Ubuntu20.04,所以类型应为“Linux”,版本应为“Ubuntu(64-bit)”

点击文件夹选择其它,将要创建的虚拟机选择到你想要放的位置。

Ubuntu_install_2

3.为新创建的虚拟机分配合适的内存大小。

根据使用的电脑配置情况进行分配,当然分配的内存大一点虚拟机也会相对于流畅一点。我这里使用的电脑内存大小为16GB,在实际分配的时候为它分配4GB(4096MB)的内存大小。后续使用过程中如果有改变的需求,还可以对内存大小再次进行修改。

Ubuntu_install_3

4.为将要创建的虚拟机分配合适的磁盘大小

根据自身电脑资源情况进行分配,我这里为它分配50G的磁盘大小。分配的磁盘空间大小在安装完成后也是可以修改的。

Ubuntu_install_4

Ubuntu_install_5

Ubuntu_install_6

更改创建的磁盘文件所放置的文件夹,为虚拟机创建的磁盘大小设置为50GB.

Ubuntu_install_7

5.虚拟机的资源分配完成后,就可以开始为虚拟机安装 Ubuntu 系统了。点击箭头所指向光驱,选择下载完成的 Ubuntu 镜像,点击箭头所指向的“启动”按钮。

Ubuntu_install_8

6.安装 Ubuntu 时,建议这里的选择都设置为英文,避免设置为中文后在将来出现一些意想不到的问题。

Ubuntu_install_9

Ubuntu_install_10

7.这里我们设置为最小安装,取消在安装过程中的下载更新,以加快镜像的安装速度。

Ubuntu_install_11

8.选择擦除磁盘并安装 Ubuntu,点击"Install Now"按钮,开始安装 Ubuntu。

Ubuntu_install_12

9.这一步会弹出“将会对磁盘分区进行修改”的提示,点击”Continue“

Ubuntu_install_13

10.这一步是对时区的选择,默认为上海,可以不用做修改,点击"Continue"。

Ubuntu_install_14

11.输入用户名密码,按照自身喜好进行设置就好。

一定要牢记你设置的用户名和密码,在后面会经常需要你输入密码进行认证的。

Ubuntu_install_15

12.完成以上步骤会提醒你重启电脑,点击重启后提醒你移除镜像安装光驱后,点击ENTER。等待一会发现光驱那里会变为没有盘片,这说明 VirtualBox 已经自动为你移除了光驱,点击一下虚拟机按下回车键“Enter”即可。(如果软件没有自动移除光驱镜像,手动移除后,点击一下虚拟机按下回车键等待虚拟机配置完成)。

Ubuntu_install_16

13.等待虚拟机开机完成,输入密码,就进入到了 Ubuntu 的桌面,虚拟机的安装就完成。

3.2 安装增强工具

Ubuntu 安装成功后,为了使我们能够更加方便的使用虚拟机,可以给虚拟机安装增强功能,安装成功后支持共享粘贴板内容、屏幕自动调整分辨率等功能。

1.在虚拟机界面,点击设备->安装增强工具

install_enhancements_1

2.在点击安装增强功能后,会弹出如下图的界面,点击Run,开始安装增强功能。

install_enhancements_2

3.在增强工具安装完成后,将会提示Press Return to close this window...,按下回车将会关闭该窗口,重启虚拟机。你会发现虚拟机的桌面大小会根据窗口大小对分辨率进行调整。

install_enhancements_3

4.最后依次点击设备->共享粘贴板->双向,就可以在 Windows 上复制后在 Ubuntu 上进行粘贴或者在 Ubuntu 上复制后在 Windows 上进行粘贴。

install_enhancements_4

四.安装编译工具

此时还不能对涂鸦提供的 SDK 进行编译开发,还需要安装一些编译所必备的工具才可以对涂鸦提供的 SDK 进行编译。

为了能更好帮助我们进行开发,建议安装 samba 工具。samba 工具使我们能够在 Windows 下对工程项目进行修改完成后,在 Linux 下对修改后的工程进行编译,使用 samba 工具提供的文件共享可以方便我们进行开发。

为什么不使用 VirtualBox 提供的共享文件夹功能而使用 samba 工具来共享文件夹呢?因为 Linux 和 Windows 的文件系统是不一样的,如果使用 VirtualBox 上的共享文件夹,当你在 GitHub 上把 SDK 克隆到 VirtualBox 提供的共享文件夹中时,编译的时候可能会出现编译失败的问题。

4.1 修改下载源

为了使下载软件的速度更快。在安装软件前,先将下载源修改为国内源,以加快下载软件的速度。

1.打开Software&Updates

ubuntu_change_download_source_1

2.点击Download from后的选项框,选择选项框内的Other...选项。

ubuntu_change_download_source_2

3.点击箭头指向的Select Best Server按钮,将会自动为你选择最快的下载源。

ubuntu_change_download_source_3

4.等待系统自动选择完成后,点击箭头指向的Choose Server按钮。

ubuntu_change_download_source_4

5.点击箭头指向的 Close 按钮,将会提醒你只有重新加载后设置才可以使用。点击 Reload 按钮,等待系统刷新缓存完成。

ubuntu_change_download_source_5

ubuntu_change_download_source_6

6.系统刷新缓存完成后,Ubuntu 的软件下载源成功更改为国内源。

4.2 下载编译依赖工具

打开终端后,依次运行以下命令:

打开终端的方式:在虚拟机中右键,点击Open in Terminal就可以打开终端了。

在输入命令后,可能会提醒你输入密码。但是输入密码后终端并没有显示任何字符,不要慌,这是因为ubuntu不会显示用户输入的密码,所以正常输入密码后回车就可以了。

sudo apt-get update -y
sudo apt-get upgrade -y
sudo apt-get install net-tools build-essential wget git python3 libc6-i386 -y

至此编译所需要的工具都已下载完成,可以在 Ubuntu 下编译涂鸦的 SDK 了。

4.3 安装samba

使用 samba 在 Ubuntu 和 windows 之间进行文件共享。

1.在安装 samba 之前我们需要对虚拟机的网络进行一些设置。先关闭虚拟机,然后按照下图中的步骤进行设置。依次点击设置->网络->网卡2,在网卡2中选择 启动网络连接,连接方式选择

仅主机(Host-Only)网络,点击确认完成设置。

samba_install_1

2.设置完成后打开虚拟机,输入下列命令:

ifconfig

输入ifconfig命令后得到电脑的IP地址,如下图显示:

samba_install_2

3.输出下列命令,开始安装 samba :

sudo apt-get update -y
sudo apt-get install samba cifs-utils samba-common

4.samba安装完成后,我们需要创建 ubuntu 和 Windows 可以互相访问的共享目录,并将共享目录的权限设置为可读可写可执行,依次执行下列命令:

sudo mkdir -p /home/share/samba
sudo chmod 777 -R /home/share/samba

5.输入下列命令,然后对 samba 的配置进行修改:

sudo gedit /etc/samba/smb.conf

在文件尾部加入下列字段,然后保存退出:

[share] 
   path = /home/share/samba 
   available = yes 
   browseable = yes 
   public = no
   writable = yes

samba_install_3

6.输入下列命令,添加指定用户至 smb 用户组,然后按照提醒设置你 samba 的密码:

sudo smbpasswd -a xxxx #(xxxx 为当前登录用户名,我这里xxxx就应该是y)

7.输入下列命令,重启 samba:

sudo service smbd restart

8.在 Windows 下,打开我的电脑,根据上面获取到的信息,按照下面图片的格式,将IP地址换成你 Ubuntu 虚拟机上的 IP 地址,填写在箭头的位置:

如果不记得了你虚拟机的 IP 地址可以在 Ubuntu 上输入ifconfig命令进行查询。

samba_install_4

9.填入用户名和你设置的 samba 密码。

建议勾选“记住我的凭证”,避免每次打开共享文件夹都要填写账号密码。

samba_install_5

10.至此,samba 已经安装配置成功。

五. 编译验证

通过上面的步骤,已经将虚拟机基本设置完成,但为了验证我们对虚拟机的设置是否成功,我们需要获取到涂鸦的SDK 进行编译以验证我们已成功安装与编译相关的工具。

5.1 GitHub上获取SDK进行验证

以 BK7231N 的 SDK 为例进行演示。

1.在 Ubuntu 虚拟机下,输入下列命令,获取 bk7231n 的 SDK:

cd /home/share/samba/
git clone https://github.com/tuya/tuya-iotos-embeded-sdk-wifi-ble-bk7231n.git

2.输入下列命令,开始编译 tuya_demo_template

cd tuya-iotos-embeded-sdk-wifi-ble-bk7231n/
sh build_app.sh apps/tuya_demo_template/ tuya_demo_template 1.0.0 #该编译命令将会在下一部分进行介绍

3.编译成功则说明上述操作均已成功完成,编译成功如下图所示:

build_success

5.2 涂鸦IoT平台下载SDK进行验证

涂鸦IoT平台上成功创建自定义开发的产品后,在硬件开发中选择Tuya OS,即可下载该模组的 SDK。

详细步骤可参考02.涂鸦 IoT 平台中的产品创建内容。

我们将下载好的 SDK 复制到 Windows 和 Ubuntu 的共享文件夹中,在Ubuntu虚拟机中输入下列命令即可进行编译:

cd /home/share/samba/
tar -xzvf *.tar.gz 	#注意:该命令会将当前目录下所有后缀名为.tar.gz的文件进行解压,建议将*.tar.gz改为你实际要解压的文件的完整名字
cd ty_iot_sdk_bk7231n_2.3.1
sh build_app.sh apps/tuya_demo_template tuya_demo_template 1.0.0 #输入该命令将会在所需相关资源下载完成后开始编译
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐