更新时间:2024-11-20 08:51:12下载pdf
TuyaOS Wi-Fi SDK 需要在 Linux 环境下进行编译。本文、主要介绍如何搭建涂鸦 Wi-Fi 和 Wi-Fi&Bluetooth LE 系列模组二次开发的编译环境。在 Windows 上使用 VirtualBox 虚拟机软件安装 Ubuntu,通过在 Ubuntu 上安装一些编译所需的工具,就可以在 Ubuntu 上对从 Github 或涂鸦开发者平台上获取到的涂鸦 SDK 进行编译了。
进入VirtualBox官网,单击红色框中的链接开始下载 VirtualBox 安装包。
进入Ubuntu官网,下载 Ubuntu 系统镜像,这里下载的是 Ubuntu 20.04 作为开发编译环境。
VirtualBox 的安装十分简单,按照 VirtualBox 软件的提示步骤,就可以成功安装了。
双击下载好的 VirtualBox 安装包,出现下图界面,单击“下一步”。
自定安装。
安装功能可以使用默认选项,一般不做改变。安装路径可以按照个人喜好进行设置。设置完成后单击“下一步”,继续安装。
如果你的电脑的C盘空间足够,选择默认目录安装即可。如果电脑C盘空间不太充足或不想安装在C盘,单击①箭头指向的“浏览”按钮对安装目录进行修改,修改完成后单击“下一步”。安装路径在选择时不建议安装路径中包含中文,避免在将来出现一些意想不到的情况。
单击 下一步,继续安装。
单击 是,继续安装。
上述步骤配置完成后,单击 安装 开始安装软件。
等待 VirtualBox 安装完成后,单击 完成 运行 VirtualBox。
VirtualBox 安装完成后,单击“新建”,开始创建虚拟机。
名称中输入Ubuntu
,下面的类型和版本会自动填充为对应的选项。本文使用的 Ubuntu 镜像为 Ubuntu20.04,所以类型应为“Linux”,版本应为“Ubuntu(64-bit)”。
单击文件夹选择其它
,将要创建的虚拟机选择到你想要放的位置。
为新创建的虚拟机分配合适的内存大小。
根据使用的电脑配置情况进行分配,当然分配的内存大一点虚拟机也会相对于流畅一点。我这里使用的电脑内存大小为16GB,在实际分配的时候为它分配4GB(4096MB)的内存大小。后续使用过程中如果有改变的需求,还可以对内存大小再次进行修改。
为将要创建的虚拟机分配合适的磁盘大小。
根据自身电脑资源情况进行分配,我这里为它分配50G的磁盘大小。分配的磁盘空间大小在安装完成后也是可以修改的。
更改创建的磁盘文件所放置的文件夹,为虚拟机创建的磁盘大小设置为50GB.
虚拟机的资源分配完成后,就可以开始为虚拟机安装 Ubuntu 系统了。单击箭头①所指向光驱,选择下载完成的 Ubuntu 镜像,单击箭头③所指向的“启动”按钮。
安装 Ubuntu 时,建议这里的选择都设置为英文,避免设置为中文后在将来出现一些意想不到的问题。
这里我们设置为最小安装,取消在安装过程中的下载更新,以加快镜像的安装速度。
选择擦除磁盘并安装 Ubuntu,单击 Install Now,开始安装 Ubuntu。
窗口弹出“将会对磁盘分区进行修改”的提示后,单击 Continue。
选择时区,单击 Continue。
输入用户名和密码,按照自身喜好进行设置就好。
此处设置的用户名和密码在后续步骤中将会多次用于认证操作。
完成上述步骤后,根据界面提示重启电脑。
重启后,软件会提示移除镜像安装光驱,此时单击ENTER
。
等待 VirtualBox 移除镜像安装光驱后,单击虚拟机并按下回车键等待虚拟机配置完成。
如果软件没有自动移除光驱镜像,您可以在进行手动移除。
等待虚拟机开机完成后,输入密码即可进入 Ubuntu 的桌面虚拟机。
Ubuntu 安装成功后,为了能够更加方便地使用虚拟机,可以给虚拟机安装增强功能。安装成功后虚拟机支持共享粘贴板内容、屏幕自动调整分辨率等功能。
在虚拟机界面,选择 设备 > 安装增强工具。
单击Run
,开始安装增强功能。
等待软件提示 Press Return to close this window...
,按下回车并重启虚拟机。
此时虚拟机的桌面大小会根据窗口大小对分辨率进行调整。
选择 设备 > 共享粘贴板 > 双向 后,就可以在 Windows 上复制内容并在 Ubuntu 虚拟机中进行粘贴或者反向操作。
此时,我们还需要安装一些编译所必备的工具才可以对涂鸦提供的 SDK 进行编译。
本文以 samba 工具为例进行介绍。samba 工具使我们能够在 Windows 下对工程项目进行修改完成后,在 Linux 下对修改后的工程进行编译,使用 samba 工具提供的文件共享也可以方便我们进行开发。
为什么不使用 VirtualBox 提供的共享文件夹功能而使用 samba 工具来共享文件夹呢?因为 Linux 和 Windows 的文件系统是不一样的,如果使用 VirtualBox 上的共享文件夹,当你在 GitHub 上把 SDK 克隆到 VirtualBox 提供的共享文件夹中时,编译的时候可能会出现编译失败的问题。
为了使下载软件的速度更快。在安装软件前,先将下载源修改为国内源,以加快下载软件的速度。
打开 Software&Updates
。
单击Download from
后的选项框,选择选项框内的Other...
选项。
单击 Select Best Server,软件将会自动为你选择最快的下载源。
等待系统自动选择完成后,单击 Choose Server。
单击 Close 后根据界面提示,再单击 Reload,等待系统刷新缓存完成。
系统刷新缓存完成后,Ubuntu 的软件下载源成功更改为国内源。
在虚拟机中进行右键单击操作并选择 Open in Terminal 来打开终端,再依次运行以下命令:
在输入命令后,可能会提醒你输入密码。
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install net-tools build-essential wget git python libc6-i386
至此编译所需要的工具都已下载完成,可以在 Ubuntu 下编译涂鸦的 SDK 了。
安装以使用 samba 在 Ubuntu 和 windows 之间进行文件共享。
在安装 samba 之前我们需要对虚拟机的网络进行一些设置。
先关闭虚拟机。
然后按照下图中的步骤进行设置。
ifconfig
输入ifconfig
命令后得到电脑的IP地址,如下图显示:
输出下列命令,开始安装 samba :
sudo apt-get update
sudo apt-get install samba cifs-utils samba-common
在 samba 安装完成后,我们需要创建 Ubuntu 和 Windows 可以互相访问的共享目录,并将共享目录的权限设置为可读可写可执行,依次执行下列命令:
sudo mkdir -p /home/share/samba
sudo chmod 777 -R /home/share/samba
输入下列命令,然后对 samba 的配置进行修改:
sudo gedit /etc/samba/smb.conf
在文件尾部加入下列字段,然后保存并退出。
[share]
path = /home/share/samba
available = yes
browseable = yes
public = no
writable = yes
输入下列命令,添加指定用户至 smb 用户组,然后按照提醒设置你 samba 的密码:
sudo smbpasswd -a xxxx #(xxxx 为当前登录用户名,我这里xxxx就应该是y)
输入下列命令,重启 samba:
sudo service smbd restart
在 Windows 操作系统中,打开我的电脑
,根据上面获取到的信息,按照下面图片的格式,将IP地址换成你 Ubuntu 虚拟机上的 IP 地址,填写在箭头②的位置:
如果不记得了你虚拟机的 IP 地址可以在 Ubuntu 上输入ifconfig
命令进行查询。
填入用户名和你设置的 samba 密码。
建议勾选“记住我的凭证”,避免每次打开共享文件夹都要填写账号密码。
至此,samba 已经安装配置成功。
通过上面的步骤,已经将虚拟机基本设置完成,但为了验证我们对虚拟机的设置是否成功,我们需要获取到涂鸦的SDK 进行编译以验证我们已成功安装与编译相关的工具。
获取涂鸦 SDK 的方法包括从涂鸦的 GitHub 仓库拉取,和从涂鸦开发者平台下载两种方式,在下面的两种方式中选择一种进行编译验证即可。
以 BK7231N 的 SDK 为例进行演示。
在 Ubuntu 虚拟机下,输入下列命令,获取 bk7231n 的 SDK:
cd /home/share/samba/
git clone https://github.com/tuya/tuya-iotos-embeded-sdk-wifi-ble-bk7231n.git
输入下列命令,开始编译 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 #该编译命令将会在下一部分进行介绍
编译成功则说明上述操作均已成功完成,编译成功如下图所示:
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 #输入该命令将会在所需相关资源下载完成后开始编译
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈