对于不常接触linux的单片机工作者,也许折腾linux需要足够耐心和坚持。
开发环境分为几个部分,编译器,SDK库含工程示例,辅助工具。除了SDK库中的乐鑫官方开发的库文件之外,其他都是开放源代码的。
首先,告诉大家一个比较省事的安装方法,在https://github.com/esp8266/esp8266-wiki页面有toolchain.sh文件,下载或复制其中的内容保存到本地,存为同样名称的文件(非必须,只是起个名),在终端使用chmod +x toolchain.sh命令为该文件添加执行权限,也可以在文件浏览器里直接右键点击查看该文件的权限属性,将执行权限打上勾,像windows操作似的。然后在终端里执行该文件,适当的时候,输入一下密码,然后就可以放到一边任其自己工作了。需要特别提醒的是,不需要也不能以root权限去执行,以当前用户去执行便可,期间,会询问你sudo的密码是多少。中间有一段过程非常久,可能要一个多小时。请耐心等候。最后完成的时候,翻看输出的内容里有没有提示什么错误,若一切正常,即表示安装成功。
chmod +x toolchain.sh
./toolchain.sh
最直接的测试安装是否正确的方法,就是马上下载一个示例工程进行编译。从https://github.com/esp8266/source-code-examples可以下载。解压到任何目录。目录下有两个工程示例,进入其中一个工程目录,打开终端执行make。如一切正常,将会在firmware文件夹下产生两个bin文件。恭喜,安装顺利完成。上述方法中,toolchain.sh文件是一个脚本,脚本里陆续自动完成本文所提到的要做的事情,就是这么简单。脚本里的内容可以根据需要修改,不做任何修改的时候,安装的东西包括编译器源码,SDK0.9.3,ESPTOOL,esptool.py。新手不建议修改,否则够你折腾。如将SDK0.9.3换成SDK0.9.5,原理是是没问题的,但直接换会因为makefile文件配置问题而编译出错。功底好的可以自行排错,不好的,绕道而行吧。本人教你绕道,继续下文。
一,安装编译器
前文所述方法简单,可谓一键安装,但中间编译编译器的过程超级慢,快够我重装一次系统了。于是还有免编译安装方法供选择。编译器是现成的。将编译器解压缩到/opt目录下,你可能需要在终端中使用sudo 来进行操作,当你操作完成后,你能看到这样的目录结构:/opt/xtensa-lx106-elf/bin,这就是你编译器的目录,然后你需要将这个目录加入到环境变量里。
sudo tar -xjvf xtensa-lx106-elf.tar.bz2 –C /opt
export PATH=/opt/xtensa-lx106-elf/bin:$PATH
二,安装SDK0.9.5
下载SDK0.9.5,解压到任意目录(通常任意目录指的是 “/home/你的帐户名/” 这个目录下的任意目录,文件浏览器里显示为Home目录,其他的目录你大多没有权限),然后从examples目录里拷贝一个工程到app目录里,examples目录下的每个目录是一个工程,还有一个readme文件是提示你如何make 参数编译的,app目录是当前工程目录。拷贝是将工程目录下的所有内容拷贝到app,而不是连工程目录一起。拷贝后,可以编译试试,需打开终端,进入app目录,执行./gen_misc.sh,会有5次提示你做选择,然后自动开始编译。你也可以直接使用make命令。如果执行时提示你权限不足,请使用sudo进行操作。