ESP8266_RTOS_IDF在WSL中的编译

文章目录

  • 什么是WSL
  • 打开WSL功能
    • 打开服务
    • 安装linux系统
  • ESP8266_RTOS_IDF linux下的环境搭建
    • 安装依赖包:
    • 安装工具链
    • 获取SDK
    • 开始编译

什么是WSL

WSL(Windows Subsystem for Linux) 适用于Linux的Windows子系统
通俗点说:有人习惯了windows下面开发,但是有些东西的开发又需要linux,这时候装个双系统尼,来回切换太麻烦,所以windows就开发了个功能叫做windows子系统,该子系统就是linux系统。可以解决windows与linux共存,无缝切换。并且文件共享等等好处。以上都是我自己的揣测,如有错误请见谅。此次使用WSL来开发ESP8266_RTOS_IDF,是听说了ESP8266_RTOS_IDF在linux下编译速度快,特来试试。

打开WSL功能

请按照该步骤依次操作:

打开服务

打开控制面板 >>> 点击程序在这里插入图片描述>>点击程序和功能>>点击启动或关闭Windows功能>>>勾选适用于Linux的Windows子系统
ESP8266_RTOS_IDF在WSL中的编译_第1张图片

  • windows下怎么访问ubuntu的
    采用远程的方法,win+R输入\\wsl$就可以看到
  • windows下的文件ubuntu系统下怎么访问
    输入cd /mnt之后ls -all就可以看到所有的盘了。接下来就一步步的cd了

安装linux系统

Microsoft Store中搜索linux,装个ubuntu系统(系统随意)。
更改镜像源(方便安装更新的时候更快)。这里不多加介绍,度娘问问一大堆。
系统下载完之后安装后就会自动启动了。

  • 关闭后桌面没有了怎么再次打开尼?
    到开始栏去找,然后选择固定到任务栏,下次就不麻烦找了。

ESP8266_RTOS_IDF linux下的环境搭建

官网详细步骤

安装依赖包:

sudo apt-get install gcc git wget make libncurses-dev flex bison gperf python python-serial

安装工具链

  • 在用户目录下创建esp文件夹
    mkdir -p ~/esp
    cd ~/esp
  • 获取工具链
    wget https://dl.espressif.com/dl/xtensa-lx106-elf-gcc8_4_0-esp-2020r3-linux-amd64.tar.gz
  • 解压工具链
    tar -xzf xtensa-lx106-elf-linux64-1.22.0-100-ge567ec7-5.2.0.tar.gz
    rm xtensa-lx106-elf-linux64-1.22.0-100-ge567ec7-5.2.0.tar.gz
  • 环境变量设置
    vim ~/.profile
    打开后按下i进如编辑,将export PATH="$PATH:$HOME/esp/xtensa-lx106-elf/bin"copy到文件末尾,按下Ese按键,按下Shiht+:,输入wq保存退出。重启控制台,输入printenv PATH查看环境变量是否设置成功。

获取SDK

  • 下载SDK包
    随便到哪个盘去git一下(可能你的linux没有git,那就需要装一下,度娘会为你解答),这里注意下clone的时候需要使用递归clone
    git clone --recursive https://github.com/espressif/ESP8266_RTOS_SDK.git
  • 安装SDK的python依赖包
    cd到ESP8266_RTOS_SDK目录下
    可能出错,因为没有安装pip
    sudo apt install python-pip
    安装完还不算完事,pip会特别慢,要更换下pip源,有代理的大哥略过:
    这里不多介绍,参考linux下pip源设置
    python -m pip install --user -r $IDF_PATH/requirements.txt
  • 设置环境变量IDF_PATH
    按照官方说法:工具链程序使用IDF_PATH环境变量访问ESP8266_RTOS_SDK。这个变量应该在您的PC上设置,否则项目将不会生成。设置可以手动完成,每次重新启动PC。另一个选项是通过在用户配置文件中定义IDF_PATH来永久性地设置它。
    vim ~.profile
    在文件末尾添加IDF_PATH环境变量。(该环境变量就是SDK的路径)
    添加完后记得重启控制台!!!
    使用printenv IDF_PATH查看是否设置成功

开始编译

这部分操作和msy32的操作一样的了。
在SDK的根目录下cd到demo目录下如:
cd examples/get-started/hello_world/
如果之前在windows下编译过就先make clean一下
然后再输入:
make all
等待编译完成吧。。。。
实际测试下来并没有多快,但是linux下编译就是有种逼格,有木有。。。。

到此为止了,不得不感叹下WSL真是个好东西!!!可能要研究研究了,哈哈哈哈

你可能感兴趣的:(WIFI)