ESP32 SDK 开发(一)——ESP32/ESP-IDF环境搭建

本文指导Windows用户快速搭建ESP-IDF开发环境,涉及Python3.7、Git安装,以及使用esp-gitee-tools加速ESP-IDF仓库下载。从安装依赖到VSCode编译Helloworld,一站式教你上手ESP32 SDK开发。
部署运行你感兴趣的模型镜像

之前是一直采用Arduino开发esp32和esp8266, 现在学学SDK开发esp32

参考资料

  • 官方资料主页:https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/index.html
  • 官方ESP-IDF环境搭建博客:https://blog.youkuaiyun.com/espressif/category_10713505.html
    本文参考:
    如何使用 Gitee 快速搭建 ESP-IDF 开发环境(Windows 版本): 点此处跳转.

此文档教程可作为对官方搭建教程的补充,使用码云进行 ESP-IDF 环境安装,预计可大幅缩短环境搭建的等待时间。

适用系统:Windows 10 64 位版本、Windows 7 SP2 级以上 x64 版本

安装版本:ESP-IDF 4.0 及以上版本

构建系统:CMake

一、安装依赖工具

在环境搭建之前,我们需要在 Windows 系统中安装一些开发必备的工具,这些工具包括 Python 环境,版本控制工具 Git。

1. 安装 Python 3.7:

Python 主要用于执行一些自动化脚本,例如执行 idf.py 等;

下载链接:: python3.7.9:点击下载.

安装提示:

注意,在安装时先勾选 Add Python 3.7 to PATH,或手动添加环境变量 >

在这里插入图片描述

修改 Python pip 源:

为了加快后续 Python 包的下载速度,可将 pip 源切换到国内,例如切换为国内阿里的源

管理员模式打开命令提示符窗口( CMD) ,执行以下指令:

pip config set global.index-url http://mirrors.aliyun.com/pypi/simple
pip config set global.trusted-host mirrors.aliyun.com

12

2. 安装 Git:

  • Git 用于拉取 ESP-IDF 源代码,代码版本控制等;
  • 下载链接:git 2.30: 点击下载.
  • 安装提示:直接点击下一步即可
    注意,以上步骤完成以后,请重启电脑使配置生效

二、下载 ESP-IDF 源代码

ESP-IDF 的仓库代码包含一个主仓库和数十个子仓库,使用重定向脚本 esp-gitee-tools ,可以直接将这些仓库的下载路径切换为国内码云仓库,极大的加快代码的下载速度,操作方法如下:

  • 进入你想要存储IDF和SDK的文件夹(最好这个路径不要带有中文) ,我的是F:\duke_work\ESP_IDF;

  • 打开一个终端窗口:可在文件管理器空白位置点击鼠标右键,然后选择 Git Bash Here;

  • 下载重定向脚本 esp-gitee-tools,运行以下指令:

git clone https://gitee.com/EspressifSystems/esp-gitee-tools.git

在这里插入图片描述

  • 下载主仓库代码:
git clone -b v4.3 https://gitee.com/EspressifSystems/esp-idf.git
下载子模块参考:https://gitee.com/EspressifSystems/esp-gitee-tools/blob/master/docs/README-submodule-update.md
  • 使用 esp-gitee-tools 下载子仓库代码,依次执行以下指令:
cd esp-gitee-tools
export EGT_PATH=$(pwd)
cd ..
cd esp-idf
$EGT_PATH/submodule-update.sh

后续如果切换了 git 分支,子仓库列表可能会有变化,需要重复执行 步骤 5 的指令

三、安装编译工具链

为了生成最终能在 ESP 芯片上运行的 bin 文件,这里还需要安装芯片对应的编译工具链和构建系统,工具链相关的下载信息一般在 ESP-IDF 中附带,我们这里使用 esp-gitee-tools 进行下载,步骤如下:

  • 进入 根目录:F:\duke_work\ESP_IDF;

  • 同第二步类似,打开一个终端窗口;

使用 esp-gitee-tools 安装编译工具链,执行以下指令:

cd esp-gitee-tools
export EGT_PATH=$(pwd)
cd ..
cd esp-idf
$EGT_PATH/install.sh

在这里插入图片描述

至此环境安装的过程已经完成

四、使用 VS Code 编译运行 Hello world !

用户可以使用任意编辑器编写源代码,我们这里推荐使用 VS Code,下载链接:点击下载 VS Code。编译、下载、运行过程如下:

  • 启动 VS Code,打开内置终端窗口,快捷键为 Ctrl + ~
    在这里插入图片描述

  • 这里建议将默认终端切换为命令提示符 CMD
    在这里插入图片描述

  • 重启 VS Code ,打开工程文件夹,这里打开的是 F:\duke_work\ESP_IDF\esp-idf\examples\get-started\hello_world
    在这里插入图片描述

  • 打开终端,编译、下载、查看输出:

    • 首先使用命令F:\duke_work\ESP_IDF\esp-idf\export.bat 添加环境变量到当前终端(开启新终端需要重新执行):
      在这里插入图片描述
    • 使用命令F:\duke_work\ESP_IDF\esp-idf\tools\idf.py build 编译代码:
      在这里插入图片描述在这里插入图片描述
    • 使用命令 F:\duke_work\ESP_IDF\esp-idf\tools\idf.py -p COMX flash monitor 下载代码,并查看串口输出:
      在这里插入图片描述
      注意: 若使用下面的开发板,开始下载前需要按住BOOT按键
      在这里插入图片描述
      美丽的Hello world,如果使用其他的串口调试助手, 波特率为115200
      在这里插入图片描述

所有配置工作已完成,现在您可以以此为基础开启 ESP 芯片开发之旅!
————————————————
版权声明:本文为优快云博主「乐鑫科技 Espressif」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/espressif/article/details/112231658

您可能感兴趣的与本文相关的镜像

Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

PS E:\ccc\lvgl_yuyu> idf.py build Executing action: all (aliases: build) Running cmake in directory E:\ccc\lvgl_yuyu\build Executing "cmake -G Ninja -DPYTHON_DEPS_CHECKED=1 -DPYTHON=D:\Espressif\python_env\idf5.4_py3.11_env\Scripts\python.exe -DESP_PLATFORM=1 -DCCACHE_ENABLE=1 E:\ccc\lvgl_yuyu"... -- Found Git: D:/Espressif/tools/idf-git/2.44.0/cmd/git.exe (found version "2.44.0.windows.1") -- ccache will be used for faster recompilation -- The C compiler identification is GNU 14.2.0 -- The CXX compiler identification is GNU 14.2.0 -- The ASM compiler identification is GNU -- Found assembler: D:/Espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32-elf-gcc.exe -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: D:/Espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32-elf-gcc.exe - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: D:/Espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32-elf-g++.exe - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- git rev-parse returned 'fatal: not a git repository (or any of the parent directories): .git' -- Could not use 'git describe' to determine PROJECT_VER. -- Building ESP-IDF components for target esp32 NOTICE: Processing 4 dependencies: NOTICE: [1/4] espressif/cmake_utilities (0.5.3) NOTICE: [2/4] espressif/esp_lcd_ili9341 (1.2.0) NOTICE: [3/4] lvgl/lvgl (8.3.9) NOTICE: [4/4] idf (5.4.1) -- Project sdkconfig file E:/ccc/lvgl_yuyu/sdkconfig -- Compiler supported targets: xtensa-esp-elf -- Found Python3: D:/Espressif/python_env/idf5.4_py3.11_env/Scripts/python.exe (found version "3.11.2") found components: Interpreter -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Performing Test C_COMPILER_SUPPORTS_WFORMAT_SIGNEDNESS -- Performing Test C_COMPILER_SUPPORTS_WFORMAT_SIGNEDNESS - Success -- App "lvgl_yuyu" version: 1 -- Adding linker script E:/ccc/lvgl_yuyu/build/esp-idf/esp_system/ld/memory.ld -- Adding linker script E:/ccc/lvgl_yuyu/build/esp-idf/esp_system/ld/sections.ld.in -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.api.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.libgcc.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.newlib-data.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.syscalls.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.newlib-funcs.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/soc/esp32/ld/esp32.peripherals.ld -- ESP_LCD_ILI9341: 1.2.0 -- Components: app_trace app_update bootloader bootloader_support bt cmock console cxx driver efuse esp-tls esp_adc esp_app_format esp_bootloader_format esp_coex esp_common esp_driver_ana_cmpr esp_driver_cam esp_driver_dac esp_driver_gpio esp_driver_gptimer esp_driver_i2c esp_driver_i2s esp_driver_isp esp_driver_jpeg esp_driver_ledc esp_driver_mcpwm esp_driver_parlio esp_driver_pcnt esp_driver_ppa esp_driver_rmt esp_driver_sdio esp_driver_sdm esp_driver_sdmmc esp_driver_sdspi esp_driver_spi esp_driver_touch_sens esp_driver_tsens esp_driver_uart esp_driver_usb_serial_jtag esp_eth esp_event esp_gdbstub esp_hid esp_http_client esp_http_server esp_https_ota esp_https_server esp_hw_support esp_lcd esp_local_ctrl esp_mm esp_netif esp_netif_stack esp_partition esp_phy esp_pm esp_psram esp_ringbuf esp_rom esp_security esp_system esp_timer esp_vfs_console esp_wifi espcoredump espressif__cmake_utilities espressif__esp_lcd_ili9341 esptool_py fatfs freertos hal heap http_parser idf_test ieee802154 json log lvgl__lvgl lwip main mbedtls mqtt newlib nvs_flash nvs_sec_provider openthread partition_table perfmon protobuf-c protocomm pthread rt sdmmc soc spi_flash spiffs tcp_transport ulp unity usb vfs wear_levelling wifi_provisioning wpa_supplicant xtensa -- Component paths: D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/app_trace D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/app_update D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/bootloader D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/bootloader_support D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/bt D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/cmock D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/console D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/cxx D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/driver D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/efuse D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp-tls D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_adc D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_app_format D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_bootloader_format D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_coex D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_common D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_ana_cmpr D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_cam D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_dac D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_gpio D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_gptimer D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_i2c D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_i2s D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_isp D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_jpeg D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_ledc D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_mcpwm D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_parlio D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_pcnt D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_ppa D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_rmt D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_sdio D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_sdm D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_sdmmc D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_sdspi D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_spi D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_touch_sens D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_tsens D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_uart D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_driver_usb_serial_jtag D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_eth D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_event D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_gdbstub D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_hid D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_http_client D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_http_server D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_https_ota D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_https_server D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_hw_support D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_lcd D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_local_ctrl D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_mm D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_netif D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_netif_stack D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_partition D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_phy D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_pm D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_psram D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_ringbuf D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_security D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_system D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_timer D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_vfs_console D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_wifi D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/espcoredump E:/ccc/lvgl_yuyu/managed_components/espressif__cmake_utilities E:/ccc/lvgl_yuyu/managed_components/espressif__esp_lcd_ili9341 D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esptool_py D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/fatfs D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/freertos D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/hal D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/heap D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/http_parser D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/idf_test D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/ieee802154 D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/json D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/log E:/ccc/lvgl_yuyu/managed_components/lvgl__lvgl D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/lwip E:/ccc/lvgl_yuyu/main D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/mbedtls D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/mqtt D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/newlib D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/nvs_flash D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/nvs_sec_provider D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/openthread D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/partition_table D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/perfmon D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/protobuf-c D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/protocomm D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/pthread D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/rt D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/sdmmc D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/soc D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/spi_flash D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/spiffs D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/tcp_transport D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/ulp D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/unity D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/usb D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/vfs D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/wear_levelling D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/wifi_provisioning D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/wpa_supplicant D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/xtensa -- Configuring done (17.9s) -- Generating done (1.9s) -- Build files have been written to: E:/ccc/lvgl_yuyu/build Running ninja in directory E:\ccc\lvgl_yuyu\build Executing "ninja all"... [57/1361] Generating ../../partition_table/partition-table.bin Partition table binary generated. Contents: ******************************************************************************* # ESP-IDF Partition Table # Name, Type, SubType, Offset, Size, Flags nvs,data,nvs,0x9000,24K, phy_init,data,phy,0xf000,4K, factory,app,factory,0x10000,1M, ******************************************************************************* [1336/1361] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/lvgl_yuyu.c.obj E:/ccc/lvgl_yuyu/main/lvgl_yuyu.c: In function 'app_main': E:/ccc/lvgl_yuyu/main/lvgl_yuyu.c:71:29: warning: unused variable 'disp_drive' [-Wunused-variable] 71 | static lv_disp_drv_t disp_drive; | ^~~~~~~~~~ [1351/1361] Performing configure step for 'bootloader' -- Found Git: D:/Espressif/tools/idf-git/2.44.0/cmd/git.exe (found version "2.44.0.windows.1") -- The C compiler identification is GNU 14.2.0 -- The CXX compiler identification is GNU 14.2.0 -- The ASM compiler identification is GNU -- Found assembler: D:/Espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32-elf-gcc.exe -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: D:/Espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32-elf-gcc.exe - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: D:/Espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32-elf-g++.exe - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Building ESP-IDF components for target esp32 -- Project sdkconfig file E:/ccc/lvgl_yuyu/sdkconfig -- Compiler supported targets: xtensa-esp-elf -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/soc/esp32/ld/esp32.peripherals.ld -- Bootloader project name: "bootloader" version: 1 -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.api.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.libgcc.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom/esp32/ld/esp32.rom.newlib-funcs.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/bootloader/subproject/main/ld/esp32/bootloader.ld -- Adding linker script D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/bootloader/subproject/main/ld/esp32/bootloader.rom.ld -- Components: bootloader bootloader_support efuse esp_app_format esp_bootloader_format esp_common esp_hw_support esp_rom esp_security esp_system esptool_py freertos hal log main micro-ecc newlib partition_table soc spi_flash xtensa -- Component paths: D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/bootloader D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/bootloader_support D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/efuse D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_app_format D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_bootloader_format D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_common D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_hw_support D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_rom D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_security D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esp_system D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/esptool_py D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/freertos D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/hal D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/log D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/bootloader/subproject/main D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/bootloader/subproject/components/micro-ecc D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/newlib D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/partition_table D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/soc D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/spi_flash D:/Espressif/frameworks/esp-idf-v5.4.1/v5.4.1/esp-idf/components/xtensa -- Configuring done (19.9s) -- Generating done (0.3s) -- Build files have been written to: E:/ccc/lvgl_yuyu/build/bootloader [110/111] Generating binary image from built executable esptool.py v4.10.0 Creating esp32 image... Merged 2 ELF sections Successfully created esp32 image. Generated E:/ccc/lvgl_yuyu/build/bootloader/bootloader.bin [111/111] C:\WINDOWS\system32\cmd.exe /C "cd /D E:\ccc\lvgl_yuyu\build\...000 bootloader 0x1000 E:/ccc/lvgl_yuyu/build/bootloader/bootloader.bin" Bootloader binary size 0x6580 bytes. 0xa80 bytes (9%) free. [1359/1361] Linking CXX executable lvgl_yuyu.elf FAILED: lvgl_yuyu.elf C:\WINDOWS\system32\cmd.exe /C "cd . && D:\Espressif\tools\xtensa-esp-elf\esp-14.2.0_20241119\xtensa-esp-elf\bin\xtensa-esp32-elf-g++.exe -mlongcalls -Wno-frame-address -fno-builtin-memcpy -fno-builtin-memset -fno-builtin-bzero -fno-builtin-stpcpy -fno-builtin-strncpy -Wl,--cref -Wl,--defsym=IDF_TARGET_ESP32=0 -Wl,--Map=E:/ccc/lvgl_yuyu/build/lvgl_yuyu.map -Wl,--no-warn-rwx-segments -Wl,--orphan-handling=warn -fno-rtti -fno-lto -Wl,--gc-sections -Wl,--warn-common -T esp32.peripherals.ld -T esp32.rom.ld -T esp32.rom.api.ld -T esp32.rom.libgcc.ld -T esp32.rom.newlib-data.ld -T esp32.rom.syscalls.ld -T esp32.rom.newlib-funcs.ld -T memory.ld -T sections.ld @CMakeFiles\lvgl_yuyu.elf.rsp -o lvgl_yuyu.elf && cd ." D:/Espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: cannot find -llvgl__lvgl: No such file or directory collect2.exe: error: ld returned 1 exit status ninja: build stopped: subcommand failed. ninja failed with exit code 1, output of the command is in the E:\ccc\lvgl_yuyu\build\log\idf_py_stderr_output_37340 and E:\ccc\lvgl_yuyu\build\log\idf_py_stdout_output_37340这是报错信息
最新发布
12-04
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值