常见SEO阿里云 app服务器ESP32—8266开发环境超详细安装步骤
云服务器 svn
本文详细阐述了本站视频[ESP32/8266]超详细的开发环境搭建说明中所介绍的步骤和执行的命令,也包含了安装过程中可能出现的错误和解决方法!值得你细品。
视频中介绍了ESP8266开发环境建议使用Linux环境,因为真的比其windows平台开发工具快很多,很多,很多!!!
所以我们需要有一点点Linux基础,当然你非要用Windows平台,那么请忽略本文~
对了。视频中没有介绍ESP32的开发环境搭建,但是我在本文中有介绍。因为都是在Linux下搭建,所以建议你学着搭建一下Linux虚拟机,然后就可以选择安装ESP32或者ESP8266开发环境了。
Linux开发环境搭建
在windows电脑上安装一个Ubuntu Server(Linux)虚拟机(VirtualBox + Ubuntu Server)
VirtualBox 6.1.20 官方下载地址:https://www.virtualbox.org/wiki/DownloadsUbuntu Server 20.04.2 LTS 官方下载地址:https://cn.ubuntu.com/download安装Ubuntu服务器版本的主要目的是把它当成ESP开发服务器使用,方便多人使用,而且体积也小很多。
我们可通过SSH客户端工具Putty或者SecureCRT连接,使用命令行进行程序安装,编译等工作。免得在Ubuntu里操作,省心些,毕竟我们还不习惯在Ubuntu系统里做事情嘛。
Ubuntu虚拟机安装没啥说的,从官方途径下载文件后,按照视频介绍安装即可。
安装虚拟机增强包
Ubuntu虚拟机安装完后,一般都需要安装虚拟机增强包。它可以帮助虚拟机与主机建立文件共享,方便文件传输!好用的功能!必须装上!
安装失败提示
如果出现了上面的错误,不用管。按照下面的方法继续安装
1.挂载cdrom(增强包镜像光盘)
所需命令如下:
sudo mount /dev/cdrom /mnt/ mount: /mnt: WARNING: devicewrite-protected, mountedread-only.2.执行脚本安装
进入已挂载的光盘,执行安装脚本
cd/mntlsAUTORUN.INFTRANS.TBL VBoxWindowsAdditions-x86.exeautorun.shVBoxLinuxAdditions.runcertVBoxSolarisAdditions.pkg/*VBoxLinuxAdditions.run 是适合于我们的系统的安装脚本文件执行*/sudo./VBoxLinuxAdditions.runreboot内容如下
增强包文件信息
安装成功后,重启系统,就可以去配置共享文件夹了
配置共享目录
并通过如下命令挂载所配置的共享目录
sudomkdir /mnt/myespsudomount -t vboxsf myesp /mnt/myesp下载安装免费SSH客户端工具-PuTTY
在Ubuntu虚拟机安装完成后,就可以使用该工具访问Ubuntu系统进行接下来的操作了。方便快捷!
PuTTY会话配置界面
SecureCRT这个工具更好用些,但是收费!
Linux服务器安装成功后,接下来就可以安装ESP8266开发环境了,想安装ESP32开发环境的同学直接下拉到后面去看吧!
1. 安装开发工具包
使用下面的命令,一次性安装所有的工具包
sudo apt-getinstallgit wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-buildccache libffi-dev libssl-dev dfu-util libusb-1.0-0libncurses5-dev lrzsz由于版本一直在更新,建议参考一下官方安装指导
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/linux-setup.html但是libncurses5-dev lrzsz这两个工具最好都一起安装
2. 下载ESP8266编译工具
进入官方页面查看最新工具
https://github.com/espressif/ESP8266_RTOS_SDK.git编译工具下载页面
从官方页面提供的资料来看,ESP8266 最新版本的编译工具链目前是v8.4.0版本(截至视频发布时间。可能已经更新了,你可以从官方途径下载最新的版本)
下载编译工具
//下载wget https://dl.espressif.com/dl/xtensa-lx106-elf-gcc8_4_0-esp-2020r3-linux-amd64.tar.gz//解压其到当前文件夹tar -zvxf xtensa-lx106-elf-gcc8_4_0-esp-2020r3-linux-amd64.tar.gz//修改其权限为777sudo chmod777-R xtensa-lx106-elf3. 下载ESP8266 SDK
gitclone--recursive https://github.com/espressif/ESP8266_RTOS_SDK.git4. 设置环境变量
环境配置很简单,就是设置2个变量即可!先拿到刚才下载的编译工具链路径和SDK路径!以我的环境为例,如下:
export PATH=$PATH:/home/esp/tools/xtensa-lx106-elf/binexport IDF_PATH=/home/esp/ESP8266_RTOS_SDK设置步骤:
打开文件后按下 i 表示添加内容:vim ~/.bashrc在文件空处添加上述的2个变量即可按下esc 键,再:wq表示写入保存,并执行命令使配置生效:source ~/.bashrc测试工具链环境是否设置成功:xtensa-lx106-elf-gcc -v测试IDF_PATH路径是否设置成功:echo $IDF_PATH测试环境配置正常
5. 编译例程代码
拷贝SDK中的例程hello_world到自定义目录中,以我的为例,如下
cp ESP8266_RTOS_SDK/examples/get-started/hello_world/./ -a进入该hello_world目录,执行命令:
makemenuconfig进行配置。配置可默认,大概看一下,然后退出保存即可。
可能遇到的错误和解决办法
1. 提示错误:/usr/bin/env: ‘python’: No such file or directory
解决办法:可将系统安装的python3做一个软链接
sudoln -s /usr/bin/python3 /usr/bin/python2. 提示版本错误
版本错误
解决办法:按照提示执行
/usr/bin/python -m pipinstall--user -r /home/esp/ESP8266_RTOS_SDK/requirements.txt如果没有什么错误,那么就可以执行编译操作了。
怎么登录云服务器
首次编译需要编译所有的代码(包括SDK源码)
makeall之后可仅仅编译自己的APP代码
makeapp可通过添加CPU多核-j8参数快速编译代码!例如
makeall-j8编译成功后,如下图
编译成功
内容如下:
To flash all build output, runmake flashor:python /home/esp/ESP8266_RTOS_SDK/components/esptool_py/esptool/esptool.py --chip esp8266 --port /dev/ttyUSB0--baud115200--before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq40m --flash_size2MB0x0/home/esp/hello_world/build/bootloader/bootloader.bin0x10000/home/esp/hello_world/build/hello-world.bin0x8000/home/esp/hello_world/build/partitions_singleapp.bin esp@esp:~/hello_world$其中如下三个文件即为我们需要烧录的程序
Flash地址 BIN文件
0x0 bootloader.bin-- 启动文件
0x10000 hello-world.bin-- 自己的APP程序
0x8000 partitions_singleapp.bin-- 配置文件
6. 烧录工具配置
下面使我烧录模块 ESP-12S的参考配置,主要注意一下FLASH SIZE
Flash烧录工具配置介绍
这里开始介绍安装ESP32开发环境搭建
说明:以下搭建步骤,我也是参考官方网站的说明,随着时间的推移官方可能有变动,所有建议大家也去官方网站看看。本文搭建是以ESP-IDF SDK版本4.2为基础。
环境搭建
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/linux-setup.html
SDK下载
https://www.espressif.com/zh-hans/support/download/sdks-demos
好了,接下来大家就参考一下下面的步骤吧
注意:本文中Linux基本路径为"/home/esp",可能跟你的不一样,所以你需要修改成你的路径。
1. 下载ESP-IDF SDK v4.2
安装解压工具unzipsudoapt install unzip下载esp-idfwgethttps://dl.espressif.com/github_assets/espressif/esp-idf/releases/download/v4.2/esp-idf-v4.2.zip解压zip文件unzipesp-idf-v4.2.zip下载方式有两种,一种是通过github下载,但是国内访问太慢了,所以直接从官方下载zip包,非常很快。
下载esp-idf
2. 安装工具
进入esp-idf目录cdesp-idf-v4.2设置优先选择官方 Espressif 下载服务器exportIDF_GITHUB_ASSETS="dl.espressif.com/github_assets"开始安装工具./install.sh安装工具
3. 设置环境变量
打开系统文件.profilevi~/.profile在 .profile 文件中末尾添加环境设置脚本注意 复制包含命令前面的../home/esp/esp-idf-v4.2/export.sh使能当前设置source~/.profile添加环境设置脚本
阿里云服务器的带宽
使能环境配置
4. 编译测试工程
环境设置完成后,我们可以复制esp-idf中的Demo例程hello_world进行编译测试
复制例程到指定目录,本例只是复制到根目录而已cp esp-idf-v4.2/examples/get-started/hello_world/ . -a进入例程目录cdhello_world设置目标芯片idf.pyset-target esp32工程配置idf.py menuconfig开始编译idf.py build复制例程
复制例程
设置目标芯片
设置目标芯片
配置工程
工程配置
menuconfig工程配置配置时,参数默认即可。
menuconfig工具的常见操作见下。
上下箭头:移动
回车:进入子菜单
ESC 键:返回上级菜单或退出
英文问号:调出帮助菜单(退出帮助菜单,请按回车键)。
空格``或 ``Y 键:选择 [*] 配置选项;N 键:禁用 [*] 配置选项
英文问号 (查询配置选项):调出有关该选项的帮助菜单
/ 键:寻找配置工程
配置工程后,就可以编译工程了
esp@esp:~/hello_world$ idf.py build Executing action: all (aliases: build) Running ninja in directory /home/esp/hello_world/build Executing "ninja all"... [4/931] Generating ../../partition_table/partition-table.bin Partition table binary generated. Contents:*******************************************************************************ESP-IDF Partition TableName, Type, SubType, Offset, Size, Flagsnvs,data,nvs,0x9000,24K, phy_init,data,phy,0xf000,4K, factory,app,factory,0x10000,1M,******************************************************************************* [140/931] Performing configure step for bootloader -- Building ESP-IDF components for target esp32 -- Adding linker script /home/esp/esp-idf-v4.2/components/esp32/ld/esp32.peripherals.ld -- Adding linker script /home/esp/esp-idf-v4.2/components/esp_rom/esp32/ld/esp32.rom.ld -- Adding linker script /home/esp/esp-idf-v4.2/components/esp_rom/esp32/ld/esp32.rom.newlib-funcs.ld -- Adding linker script /home/esp/esp-idf-v4.2/components/esp_rom/esp32/ld/esp32.rom.libgcc.ld -- Adding linker script /home/esp/esp-idf-v4.2/components/bootloader/subproject/main/ld/esp32/bootloader.ld -- Adding linker script /home/esp/esp-idf-v4.2/components/bootloader/subproject/main/ld/esp32/bootloader.rom.ld -- Components: bootloader bootloader_support efuse esp32 esp_common esp_rom esptool_py log main micro-ecc partition_table soc spi_flash xtensa -- Component paths: /home/esp/esp-idf-v4.2/components/bootloader /home/esp/esp-idf-v4.2/components/bootloader_support /home/esp/esp-idf-v4.2/components/efuse /home/esp/esp-idf-v4.2/components/esp32 /home/esp/esp-idf-v4.2/components/esp_common /home/esp/esp-idf-v4.2/components/esp_rom /home/esp/esp-idf-v4.2/components/esptool_py /home/esp/esp-idf-v4.2/components/log /home/esp/esp-idf-v4.2/components/bootloader/subproject/main /home/esp/esp-idf-v4.2/components/bootloader/subproject/components/micro-ecc /home/esp/esp-idf-v4.2/components/partition_table /home/esp/esp-idf-v4.2/components/soc /home/esp/esp-idf-v4.2/components/spi_flash /home/esp/esp-idf-v4.2/components/xtensa -- Configuring done -- Generating done -- Build files have been written to: /home/esp/hello_world/build/bootloader [142/931] Performing build step for bootloader [1/2] Linking C executable bootloader.elf [2/2] Generating binary image from built executable esptool.py v3.0 Generated /home/esp/hello_world/build/bootloader/bootloader.bin [931/931] Generating binary image from built executable esptool.py v3.0 Generated /home/esp/hello_world/build/hello-world.bin Project build complete. To flash, run this command: /home/esp/.espressif/python_env/idf4.2_py3.8_env/bin/python ../esp-idf-v4.2/components/esptool_py/esptool/esptool.py -p (PORT) -b 460800 --before default_reset --after hard_reset --chip esp32 write_flash --flash_mode dio --flash_size detect --flash_freq 40m 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin 0x10000 build/hello-world.bin首次编译,过程有点慢~稍等一会哈。如果一切正常,编译完成后将生成三个.bin 文件,跟ESP8266类似,可参考本文中ESP8266部分。
好了,终于写完了~~~我要去喝杯咖啡了。哈哈哈。对了。别忘了点个赞啥的哈!
域名和云服务器
推荐阅读
- 手机连接云服务器挂载阿里云盘为本地磁盘 2025-12-17 09:03:44
- 雷蛇云服务器把阿里云盘变本地硬盘来使用,妈妈再也不用担心我电脑空间不够用 2025-12-17 08:53:41
- 云服务器翻墙如何在云计算虚拟化期间减少安全风险 2025-12-17 08:43:38
- java云服务器你不得不知的云计算与虚拟化基础知识(下) 2025-12-17 08:33:34
- 云服务器ftp配置奇观技术云计算-虚拟化解决方案 2025-12-17 08:23:29

