环境搭建(Windows)

更新时间:2023-12-14 03:20:58下载pdf

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

安装虚拟机

第 1 步:软件下载

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

    环境搭建(Windows)

  2. 进入Ubuntu 官网,下载 Ubuntu 系统镜像。这里下载的是 Ubuntu 20.04 (推荐使用 Ubuntu 18 及以上版本)作为开发编译环境。

    环境搭建(Windows)

第 2 步:安装 VirtualBox

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

  1. 双击下载好的 VirtualBox 安装包,出现下图界面,单击下一步

    环境搭建(Windows)

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

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

    环境搭建(Windows)

  3. 单击 下一步,继续安装。

    环境搭建(Windows)

  4. 单击 ,继续安装。

    环境搭建(Windows)

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

    环境搭建(Windows)

  6. 等待 VirtualBox 安装完成后,单击 完成,运行 VirtualBox。

    环境搭建(Windows)

第 3 步:安装虚拟机

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

    环境搭建(Windows)

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

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

    环境搭建(Windows)

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

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

    环境搭建(Windows)

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

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

    环境搭建(Windows)

    环境搭建(Windows)

    环境搭建(Windows)

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

    环境搭建(Windows)

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

    环境搭建(Windows)

  6. 安装 Ubuntu 时,建议语言设置为英文。如果设置为中文,在将来可能出现一些意想不到的问题。

    环境搭建(Windows)

    环境搭建(Windows)

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

    环境搭建(Windows)

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

    环境搭建(Windows)

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

    环境搭建(Windows)

  10. 选择时区,默认为上海。可以不用做修改,单击Continue

    环境搭建(Windows)

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

    此处设置的用户名和密码在后续步骤中将会多次用于认证操作。

    环境搭建(Windows)

  12. 完成上述步骤后,根据界面提示重启电脑。
    重启后,软件会提示移除镜像安装光驱,此时单击ENTER。等待 VirtualBox 移除镜像安装光驱后,单击虚拟机并按下回车键等待虚拟机配置完成。

    如果软件没有自动移除光驱镜像,您可以在进行手动移除。

    环境搭建(Windows)

  13. 等待虚拟机开机完成后,输入密码即可进入 Ubuntu 的桌面虚拟机。

第 4 步: 安装增强工具

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

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

    环境搭建(Windows)

  2. 单击Run,开始安装增强功能。

    环境搭建(Windows)

  3. 等待软件提示 Press Return to close this window…,按下回车并重启虚拟机。此时,虚拟机的桌面大小会根据窗口大小,调整分辨率。

    环境搭建(Windows)

  4. 选择 设备 > 共享粘贴板 > 双向 后,就可以在 Windows 上复制内容并在 Ubuntu 虚拟机中进行粘贴或者反向操作。

    环境搭建(Windows)

安装编译工具

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

本文以 Samba 工具为例进行介绍。Samba 工具使我们能够在 Windows 下修改工程项目,在 Linux 下对修改后的工程进行编译,使用 Samba 工具提供的文件共享,也可以方便我们进行开发。

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

第 1 步: 修改下载源

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

  1. 打开 Software&Updates

    环境搭建(Windows)

  2. 单击Download from后的选项框,选择选项框内的**Other…**选项。

    环境搭建(Windows)

  3. 单击 Select Best Server,软件将自动为你选择最快的下载源。

    环境搭建(Windows)

  4. 等待系统自动选择完成后,单击 Choose Server

    环境搭建(Windows)

  5. 单击 Close 后根据界面提示,再单击 Reload,等待系统刷新缓存完成。

    环境搭建(Windows)

    环境搭建(Windows)

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

第 2 步:下载编译依赖工具

在虚拟机中,单击右键并选择 Open in Terminal 来打开终端,再依次运行以下命令:

在输入命令后,可能会提醒你输入密码。

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 了。

第 3 步: 安装 Samba

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

  1. 在安装 Samba 之前,需要设置虚拟机的网络。先关闭虚拟机,然后按照下图中的步骤进行设置。
    (1)选择 设置 > 网络 > 网卡2
    (2)在 网卡2 中选择 启动网络连接,连接方式选择 仅主机(Host-Only)网络
    (3)单击 确认 完成设置。

    环境搭建(Windows)

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

    ifconfig
    

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

    环境搭建(Windows)

  3. 输出下列命令,开始安装 Samba。

    sudo apt-get update
    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
    
    环境搭建(Windows)
  6. 输入下列命令,添加指定用户至 smb 用户组,然后按照提醒设置你 Samba 的密码:

    sudo smbpasswd -a xxxx #(xxxx 为当前登录用户名,我这里xxxx就应该是y)
    
  7. 输入下列命令,重启 Samba:

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

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

    环境搭建(Windows)

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

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

    环境搭建(Windows)

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

编译验证

通过上面的步骤,已经将虚拟机基本设置完成。但为了验证对虚拟机的设置是否成功,我们需要获取涂鸦 SDK 进行编译,以验证我们已成功安装与编译相关的工具。
涂鸦 SDK 从涂鸦的 GitHub 仓库拉取和从涂鸦 IoT 开发平台下载。在下面的两种方式中选择一种进行编译验证即可。

方式一:GitHub 上获取 SDK 进行验证

以 BK7231N 的 SDK 为例进行演示。

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

    cd /home/share/samba/
    git clone --recursive 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. 编译成功,则说明上述操作均已成功完成。编译成功如下图所示:

    环境搭建(Windows)

方式二:从涂鸦 IoT 开发平台下载 SDK 进行验证

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

详细步骤,可参考产品创建内容。

环境搭建(Windows)

将下载好的 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 #输入该命令将会在所需相关资源下载完成后开始编译