之前一直在Windows下使用mingw32(Windows下的GNU套件)对esp8266/esp32编译下载,这对于习惯在Windows下开发人员来说还是比较方便的,但是编译速度相对比较慢,整个项目工程make下来,大概需要3-4分钟(当然这跟你项目所用的组件多少相关,同时与电脑性能有很大关系),苦于现实的无奈,咱的电脑配置不咋样,编译下来特别耗时。 因此今天来介绍下如何在linux系统中搭建esp8266开发环境,希望能改善编译速度,同时在linux环境中能够更方便esp8266开发,比如写一些脚本配置,大大增加开发速度。好了,废话不多说,开始行动~
下载esp8266工具链
下载链接:https://dl.espressif.com/dl/xtensa-lx106-elf-linux64-1.22.0-92-g8facf4c-5.2.0.tar.gz
在windows中点击以上链接下载esp8266的工具链(注意下载的后缀是.tar.gz是linux的文件压缩格式),并放在Windows和Ubuntu的共享文件夹下(当然首先得创建共享文件夹,如下图)
在Ubuntu中创建工作目录
为了便于之后的统一管理,我们在Ubuntu的普通用户的家目录下创建esp文件夹,并拷贝上面的工具链到文件夹下:
- 创建esp工作目录:
- 拷贝工具链压缩包到esp目录下:
- 解压缩,得到工具链
下载ESP8266_RTOS_SDK
通过git工具拉取(如果没装的话,可以使用sudo apt-get install git 命令安装,非常简单,一步到位):
通过ls查看下esp目录下是否有了xtensa-lx106-elf 和ESP8266_RTOS_SDK文件夹:
修改IDF_PAT路径
随便进入一个ESP8266_RTOS_SDK中example目录下的例程:
用vi命令打开:vi Makefile,并添加IDF_PATH设置:
保存退出: wq!
更新python库,以适配ESP8266_RTOS_SDK
命令行输入:
python -m pip install --user -r ~/esp/ESP8266_RTOS_SDK/requirements.txt
若出现以上错误,则根据提示输入:
pip install –upgreade pip
需要注意的是:执行此命令后会涉及文件权限,我们可以在命令前加上sudo或暂时改为root模式执行。
更新完毕后,再次执行:
python -m pip install --user -r ~/esp/ESP8266_RTOS_SDK/requirements.txt
设置工具链环境变量
将esp8266的工具链路径设为环境变量,这样我们才能在其他路径下调用工具链中的工具,具体命令:
export PATH=”$PATH:$HOME/esp/xtensa_lx106-elf/bin”
通过echo $PATH 打印环境变量,观察设置是否成功。
尝试编译
还是以SDK下的example中hello_world为例子, 执行make(-j4可不加)编译:
......(此处省略一些编译信息)
出现上图所示信息,即表明环境搭建成功!
总结
尝试编译了例程确实感觉比在windows编译快了不少~~~(可能是心里作用~ 哈哈), 总之在linux下开发还是好处多多的,小伙伴可以去搭建体验下吧~ 当然想学习在Windows下搭建esp8266开发环境,可以参考我的视频: https://www.ixigua.com/i6684445655173169164/
当然最后要说的是, 喜欢嵌入式,物联网的小伙伴记得关注,收藏,转发哈~