前提条件

1. linux操作系统或者windows下的linux虚拟机或者OS X操作系统

2. 联网

下载

* [Mac](https://dl.espressif.com/dl/xtensa-lx106-elf-osx-1.22.0-92-g8facf4c-5.2.0.tar.gz)
* [Linux(64)](https://dl.espressif.com/dl/xtensa-lx106-elf-linux64-1.22.0-92-g8facf4c-5.2.0.tar.gz)
* [Linux(32)](https://dl.espressif.com/dl/xtensa-lx106-elf-linux32-1.22.0-92-g8facf4c-5.2.0.tar.gz)
 
根据系统类型,在上述乐鑫官方下载对应的编译器。
 
https://github.com/espressif/ESP8266_RTOS_SDK/releases/tag/v2.0.0
在上述地址下载ESP8266_RTOS_SDK 2.0.0
 
https://github.com/esp8266/esp8266-wiki/blob/master/libs/libhal.a
ESP8266_RTOS_SDK 2.0.0缺少一个函数库(不知道是不是官方打包漏了,或许以后会有改进)下载缺少的函数库libhal
 
环境设置
下面以32位Ubuntu16.04为例。
首先将编译器压缩包、SDK压缩包和libhal.a放到桌面,然后将编译器和SDK解压。
 
然后打开终端(terminal)
 
接下来我们需要将编译器的路径导入环境变量。
首先进入到编译器所在目录,由于我们的编译器被解压到桌面了,所以执行:
cd Desktop/xtensa-lx106-elf/bin/

然后使用命令pwd获取到编译器的绝对路径

pwd

此处的绝对路路径是/home/beecom/Desktop/xtensa-lx106-elf/bin,我们将其导入到环境变量中

echo "export PATH=/home/beecom/Desktop/xtensa-lx106-elf/bin:$PATH" >> ~/.bashrc

重新打开一个终端,首先将libhal.a复制到SDK的libs目录下

cp Desktop/libhal.a Desktop/ESP8266_RTOS_SDK-2.0.0/lib/

然后进入到SDK的示例工程project_template中

cd Desktop/ESP8266_RTOS_SDK-2.0.0/examples/project_template/

修改编译脚本的环境变量SDK_PATH(SDK路径)和BIN_PATH(编译输出bin路径)

gedit gen_misc.sh

运行编译脚本,根据自身需要按步骤选择编译选项

./gen_misc.sh

编译完成,编译生成的bin文件都在/home/beecom/Desktop/ESP8266_RTOS_SDK-2.0.0/bin目录中

预留编译环境镜像文件下载:

virtualbox ubuntu16.04 ova镜像文件

回首页

ESP8266 RTOS SDK编译环境搭建的更多相关文章

  1. windows下cocos2dx3.0开发环境及Android编译环境搭建

    cocos2dx更新到了3.x版本号,自己一直没有换,如今开发组要求统一换版本号,我就把搭建好开发环境的过程记录下来. 一.Windowns下开发环境搭建 1.  所需工具         1)coc ...

  2. Emscripten编译环境搭建--将C和C++编译成JS

    Emscripten编译环境搭建--将C和C++编译成JS 需求:linux环境下用js执行c.c++文件,使用emscirpten编译器 目标:搭建好Emscripten环境 环境:Ubuntu16 ...

  3. ESP8266 RTOS SDK开发

    ESP8266 RTOS SDK开发 目录 ESP8266 RTOS SDK开发 一.源码RTOS SDK包的下载和编译 二.固件烧录 1.管脚定义 三.程序例程 ## 1.PWM设置 连接MQTT ...

  4. ubuntu12.04下安卓编译环境搭建总结

    前言:      因为工作需要,经常要编译安卓下的动态库,公司有已经搭建好环境的服务器,但是第一自己想自己搭建一下了解一个整个过程,另外,公司的服务器也经常出现问 题,导致编译不了,所以就想自己搭建环 ...

  5. openwrt(一):openwrt源码下载及编译环境搭建

    声明:从网上各位大神的博客学习,整理后记录,非原创. 注:请用非root用户来下载源码 导航: 1. openwrt编译环境搭建 2. openwrt源码下载 3. feeds更新 1. openwr ...

  6. IoT设备程序开发及编译环境搭建初体验

    引言 Mirai事件一经曝出,立即引领了一轮研究IoT设备的热潮.目前,对Mirai的报告大多只是在对其功能实现上的介绍,却很少提及如何实现IoT设备程序开发的测试环境.本文在对Mirai的源码研究的 ...

  7. Tiny4412 开发板 编译环境搭建【转】

    本文转载自:http://blog.csdn.net/beijiwei/article/details/51055369 版权声明:本文为博主原创文章,未经博主允许不得转载. /*********** ...

  8. C语言编程入门之--第二章编译环境搭建

    第二章 编译环境搭建 导读:C语言程序如何工作,首先需要编译链接成可执行文件,然后就可以运行在不同的环境中,这个“环境”的意思就是比如说,电脑,手机,路由器,蓝牙音箱等等智能设备中,其中编译器启到了关 ...

  9. u-boot 移植(一)编译环境搭建

    u-boot 移植(一)编译环境搭建 soc:s3c2440 board:jz2440 uboot:u-boot-2016.11 toolchain:gcc-linaro-7.4.1-2019.02- ...

随机推荐

  1. Python目录:

    Python基础 python书写规范--消去提示波浪线 Python 列表(list) Python字符串 Python字典 Python文件操作 Python函数 Python函数-装饰器 Pyt ...

  2. day15.Python内置函数

    作用域相关 locals() -- 获取执行本方法所在命名空间的局部变量的字典 globals() --  获取全局变量的字典 print(locals()) print(globals()) {'_ ...

  3. Promise源码深入理解

    ) ) }); ) }, ) }); ) ) }, ) }); ) }, ) }); p.then(function (x) { console.log(x) }) //输出 1 链式调用1 链式调用 ...

  4. java动态代理实现与原理详细分析

    关于Java中的动态代理,我们首先需要了解的是一种常用的设计模式--代理模式,而对于代理,根据创建代理类的时间点,又可以分为静态代理和动态代理. 一.代理模式    代理模式是常用的java设计模式, ...

  5. springboot 使用 swagger2

    段时间,同事分享了一下 swagger-ui,于是自己尝试了一下.大致的使用过程这里记录一下: 1.添加依赖 <!--swagger-ui--><dependency> < ...

  6. React(六)Props属性

    state 和 props 主要的区别在于 props 是不可变的,而 state 可以根据与用户交互来改变.这就是为什么有些容器组件需要定义 state 来更新和修改数据. 而子组件只能通过 pro ...

  7. (89)Wangdao.com第二十二天_JavaScript 属性

    属性 属性本身是一个对象(Attr 对象) Element.attributes  返回一个类似数组的动态对象,成员是该元素标签的所有属性节点对象 属性的实时变化都会反映在这个节点对象上. 其他类型的 ...

  8. 《Linux内核原理与分析》第一周作业 20189210

    实验一 Linux系统简介 这一节主要学习了Linux的历史,Linux有关的重要人物以及学习Linux的方法,Linux和Windows的区别.其中学到了LInux中的应用程序大都为开源自由的软件, ...

  9. react路由

    针对多个列表导航公用一个组建,然后 有两种路由方式 1.import {HashRouter as Router,Route,Link} from 'react-router-dom' 不过这个路由中 ...

  10. jquery弹窗插件layer:layer.layui.com

    这两天在做抽奖转盘功能,浏览器自带的alert弹出框太low,本人又基本不会前端, 于是借鉴前人用fancybox插件做的效果 结果没看懂其写法(http://www.0101shop.com/goo ...