ESP8266和ESP32系类的nodemcu固件可谓为这些设备端的开发简直如虎添翼,使用lua语言来写语法简单高效,而且采用事件驱动的开发模型在也不用考虑中断等复杂的操作,下面我将介绍一种使用WSL来编译nodemcu固件的方法。首先编译固件有很多中有多种,有的是使用在线编译,有的使用docker技术,有的使用虚拟机 ,在这里我强烈推荐使用WSL,不需要太多的花里胡哨的操作,直接本地编译本地。忍不住吐槽在线编译,刚开始编译没问题,编译多了发来的邮件有内容,没有下载地址,当时忙着使用着急不的行,后来第二天起床他又有了简直诡异。好了废话不多说直接开始。
首先安装WSl了,首先启动Linux子系统的:
点击确定后window会自动给你部署环境,部署完毕后重启,进入应用商店安装Ubuntu等
选择你喜欢的(其实很随意,最好你熟悉的,新手建议Ubuntu),直接安装,然后点击图标启动,或者输入bash。启动后会让你输入用户名和密码,就随意了 。然后最好更新,输入
sudo apt-get updete
更新完毕后直接安装编译所需要的依赖:
sudo apt-get install makegit tar unzip srecord python python-pip python-serial gcc g++
安装完后克隆源码:
git clonehttps://github.com/NODEMCU/NODEMCU-firmware.git
很建议把他克隆到你喜欢的位置,要不然你找不到位置,直接后边 加 \mnt\d 这里以D盘为例,
然后完成后你应该就能在D盘看到你所要的固件了,你可以用linux下的解压uzio也可以使用windows下,反正解压就试了
然后进入根目录
为了测试你可以直接输入make 就可以,由于是Linux和widows都是可以访问的所以如果你要修改模块直接用windows打开文件修改即刻
模块修改在app/include 修改usr_module 即可:
需要哪个模块就把注释去掉即可,需要注意的是有些会有依赖,但是编译可能不会报错。修改后直接make (不放心可以使用make clean 后再修改然后make )
编译成功后再bin下就可以看到固件已经生成了
然后既可以开心搞事情了!是不是很简单,很友好。