esp32是乐鑫出品的一款集成了wifi和蓝牙的集成模块,板上自带两个哈佛结构的Xtensa LX6 CPU双核处理器,本文主要讲解如何在linux下搭建其编译开发环境。

首先ctrl+alt+t打开终端,sudo -s选择用root权限登陆,以免后面的操作一直要sudo很麻烦。

输入指令:

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

用浏览器打开链接

http://link.zhihu.com/?target=https%3A//dl.espressif.com/dl/xtensa-esp32-elf-linux64-1.22.0-61-gab8375a-5.2.0.tar.gz

下载编译包(注意,一定要安装最新版的,不然后面的编译会出错,现在发的这个是此时的最新版。)

cd /        到根目录

并mkdir esp32创建一个esp32的文件夹,

cd /home/li/下载/            到下载了文件的文件夹下(li是安装时自己设定的用户名)

mv xtensa-esp32-elf-linux64-1.22.0-61-gab8375a-5.2.0.tar.gz  /esp32/                       将文件移动到自己创建的esp32的文件夹下。

cd /esp32               回到esp32文件夹后,tar -zxvf xtensa-esp32-elf-linux64-1.22.0-61-gab8375a-5.2.0.tar.gz将文件解压。至此,编译环境就搭建完成了。

编译环境下载解压完成后,需要下载ESP32的ESP-IDF开发条件,在终端输入

git clone --recursive https://github.com/espressif/esp-idf.git 即可下载最新的开发条件

ESP-IDF的目录结构如下:

components:ESP-IDF的核心组件

examples:ESP-IDF提供的实例程序

make:ESP-IDF工程管理目录

tools:ESP-IDF提供的工具集

docs:ESP-IDF相关文档

至此,ESP32的开发条件和编译条件就搭建完成了,但是,此时还是不能够对文件进行编译,因为我们并没有告诉linux它的环境变量,为了避免每次登陆linux终端都要重新输入环境变量,我们在/home/li/.bashrc文件中加入环境变量。

输入gedit ~/.bashrc打开文件,并添加环境。

在文本的最后添上

export PATH=/esp32/xtensa-esp32-elf/bin:$PATH
export IDF_PATH=/esp32/esp-idf
最后在终端输入source home/li/.bashrc更新环境变量整个开发环境即搭建完成了。可以

cd /esp32/esp-idf/examples/get-started/hello_world/   到helloworld的例子下进行make flash操作测试整个环境是否能够成功运行(使用virtual box 需要给usb添加权限sudo usermod -a -G dialout $USER),

第一次make时会自动进入menuconfig界面,一般不用修改,直接exit即可。

exit 后会显示编译产生了很多的.o文件。

make 完成后,插上esp32,输入make flash 即可完成程序的烧录。至此,整个esp32的开发环境就搭建完毕了,下篇文章就继续讲解如何运用minicom串口软件查看esp32的输出。

ubuntu 14.04下搭建esp32开发环境的更多相关文章

  1. Ubuntu 14.04下搭建 Android 开发环境(1) -JDK安装

    1.下载最新的jdk安装,地址:http://www.oracle.com/technetwork/java/javase/downloads/ 2.解压jdk-8u20-linux-x64.gz,我 ...

  2. Ubuntu 12.04下搭建Qt开发环境

    http://download.qt.io/official_releases/qt/ Ubuntu 环境下Gtk与Qt编译环境安装与配置(系统环境是Ubuntu 12.04) 1.配置基础开发环境G ...

  3. ESP32搭建3.ubuntu14.04下搭建esp32开发环境 (10-5)

    硬件为乐鑫出品的ESP32一款集成了wifi和蓝牙的集成模块. 1.首先ctrl+alt+t打开终端,sudo -s选择用root权限登陆 . 2. 输入指令:sudo apt-get install ...

  4. Ubuntu 14.04 下搭建SVN服务器 svn://

    Ubuntu 14.04 下搭建SVN服务器 svn:// 安装软件包: sudo apt-get install subversion 之后选择SVN服务文件及配置文件的放置位置.我放在了/srv下 ...

  5. Ubuntu 14.04 下搭建SVN服务器 (转载自 http://www.linuxidc.com/Linux/2015-01/111956.htm)-------------我所用到是红色字体

    http://www.linuxidc.com/Linux/2015-01/111956.htm Ubuntu 14.04 下搭建SVN服务器 svn:// 安装软件包: sudo apt-get i ...

  6. Ubuntu 14.04下搭建Node.js的开发环境

    最近想找一个轻量级且支持快速开发的服务开发平台,选来选去选择了Node.js,当时有几种选择: Python + Django(用过Django,虽然开发快速,但是感觉性能并不太好). Ruby + ...

  7. Ubuntu 13.04下构建Qt5开发环境

    虽然Qt命运多舛,但是也阻挡不了程序员对它的喜爱.经历了一系列波折之后,现在到在芬兰公司Digia手中,Qt又将迎来一个发展.Qt5就是在这种情况之下发布的.正值Ubuntu刚刚发布了13.04版,我 ...

  8. ubuntu 12.04LTS下搭建Andriod开发环境记录

    今天在Ubuntu 12.04 LTS 下安装了android开发环境. 1, 安装JDK 先去 Oracle下载Linux下的JDK压缩包,我下载的是jdk-7u4-linux-i586.tar.g ...

  9. Ubuntu 14.04下搭建Python3.4 + PyQt5.3.2 + Eric6.0开发平台

    引言 找了很多Python GUI工具集,还是觉得PyQt比较理想,功能强大跨平台,还支持界面设计器.花一天时间折腾了Ubuntu14.04(32位)+ Python3.4 + Qt5.3.2 + P ...

随机推荐

  1. django之 使用py文件操作django项目中的表

    要想在一个另外的py文件中操作django,可以使用如下的代码 import os os.environ.setdefault("DJANGO_SETTINGS_MODULE",' ...

  2. Java 详解 JVM 工作原理和流程

    Java 详解 JVM 工作原理和流程 作为一名Java使用者,掌握JVM的体系结构也是必须的.说起Java,人们首先想到的是Java编程语言,然而事实上,Java是一种技术,它由四方面组成:Java ...

  3. java性能优化总结

    本人在java中积累了一些性能优化相关的经验,现在总结如下: 批量处理服务性能优化 RTB服务性能优化 BasicData线上问题解决,疯狂FullGC的问题 BasicData线上部分服务器cpu使 ...

  4. linux 的那些hung 检测机制

    在dmesg中,看到如下信息: [:: seconds [:: seconds [:af: seconds [:af: seconds [:: seconds [:3b: seconds [:: se ...

  5. python学习Day3 变量、格式化输出、注释、基本数据类型、运算符

    今天复习内容(7项) 1.语言的分类 -- 机器语言:直接编写0,1指令,直接能被硬件执行 -- 汇编语言:编写助记符(与指令的对应关系),找到对应的指令直接交给硬件执行 -- 高级语言:编写人能识别 ...

  6. css之标签选择器

    标签(空格分隔): 标签选择器 选择器定义: 在一个HTML页面中会有很多很多的元素,不同的元素可能会有不同的样式,某些元素又需要设置相同的样式,选择器就是用来从HTML页面中查找特定元素的,找到元素 ...

  7. DRF的解析器和渲染器

    解析器 解析器的作用 解析器的作用就是服务端接收客户端传过来的数据,把数据解析成自己可以处理的数据.本质就是对请求体中的数据进行解析. 在了解解析器之前,我们要先知道Accept以及ContentTy ...

  8. 二叉搜索树与双向链表(python)

    题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表.要求不能创建任何新的结点,只能调整树中结点指针的指向. # -*- coding:utf-8 -*- # class TreeNo ...

  9. 网络请求Adapter添加数据

    一般在开发中我们都需要在listview中添加数据显示在界面上 1.首先我们会在布局中写一个listview <FrameLayout xmlns:android="http://sc ...

  10. APIcloud微信支付和支付宝支付(方案2,主要在后台进行)

    支付宝代码 var aliPay = api.require('aliPay'); api.ajax({ url: yuming+'index.php/api/Alipay/getOrder', me ...