RISC-V32交叉编译器GCC 8.4.0发布新版

需积分: 5 0 下载量 86 浏览量 更新于2024-10-12 收藏 182.35MB GZ 举报
资源摘要信息:"riscv32-esp-elf-gcc8_4_0-esp-2021r2-patch5-macos-arm64.tar.gz"是一个压缩包文件,包含了基于RISC-V架构的32位嵌入式系统平台的GCC交叉编译工具链,适用于ESP32系列芯片,支持的操作系统为macOS的ARM64架构。在这个文件中,我们可以找到以下知识点: 1. RISC-V架构:RISC-V是一种开源指令集架构(ISA),它遵循精简指令集计算机(RISC)的原则。与传统的专有ISA不同,RISC-V提供了免费的、开放的标准,支持广泛的应用从微控制器到高级计算机。RISC-V设计简单、模块化,易于扩展,支持各种用户自定义指令和扩展。 2. 32位嵌入式系统:32位嵌入式系统通常指使用32位微处理器的嵌入式系统。32位系统可以提供比8位和16位系统更大的地址空间和更高的处理能力,适用于需要更多计算资源和内存访问的应用。 3. GCC交叉编译工具链:GCC(GNU Compiler Collection)是一套广泛使用的编译器套件,能够编译多种编程语言生成多种目标代码。交叉编译是指在一个平台上生成另一个平台的目标代码,这里特指在x86架构的macOS系统上生成适用于RISC-V架构的ESP32微处理器的可执行代码。 4. ESP-ELF:ESP-ELF指的是针对ESP系列芯片的执行链接格式(Executable and Linkable Format)。这是一种标准的二进制文件格式,用于存储代码和数据,以便被操作系统加载执行。在嵌入式系统中,ELF文件格式常用于存储固件。 5. ESP32芯片:ESP32是由Espressif Systems开发的一种低成本、低功耗的系统级芯片(SoC),集成了Wi-Fi和蓝牙功能,广泛应用于物联网(IoT)项目。ESP32具有高性能的处理能力和丰富的外设接口,支持多种编程环境。 6. macOS的ARM64架构:ARM64,也称为AArch64,是ARM架构的64位版本,它是苹果公司Mac电脑在2020年迁移至自研芯片的基础。在macOS上支持ARM64架构允许开发者编译和部署原生的ARM64应用,提高性能并优化功耗。 7. GCC版本8.4.0:GCC 8.4.0是该工具集的一个特定版本,提供了一定的特性和性能改进。版本号中的“patch5”表明这是一个带有第五次更新或修复的版本。 8. 2021r2和2021r2-patch5:这里的版本标记可能指的是某个特定软件发布的版本号和后续的补丁版本。在这种情况下,它指的是与ESP32兼容的GCC编译工具链的一个特定版本和它的第五次更新。 结合这些知识点,我们可以了解到这个压缩包文件是针对特定硬件和软件开发环境的工具集合,是开发人员在macOS上为ESP32设备编程和部署应用程序的重要资源。开发者可以利用这个工具链来编译他们的程序,并生成可在ESP32微处理器上运行的二进制代码。这对于物联网项目的开发和嵌入式系统的软件实现具有重要意义。

ESP32C3, esp-idf 4.3.5,编译报错。FAILED: wifi_softAP.elf cmd.exe /C "cd . && D:\Espressif\tools\riscv32-esp-elf\esp-2021r2-patch3-8.4.0\riscv32-esp-elf\bin\riscv32-esp-elf-g++.exe -march=rv32imc -nostartfiles -march=rv32imc --specs=nosys.specs @CMakeFiles\wifi_softAP.elf.rsp -o wifi_softAP.elf && cd ." d:/espressif/tools/riscv32-esp-elf/esp-2021r2-patch3-8.4.0/riscv32-esp-elf/bin/../lib/gcc/riscv32-esp-elf/8.4.0/../../../../riscv32-esp-elf/bin/ld.exe: esp-idf/main/libmain.a(softap_example_main.c.obj): in function `ch623_task': d:\espressif\frameworks\esp-idf-v4.3.5\examples\wifi\esp32_config_wifi\build/../main/softap_example_main.c:164: undefined reference to `CH623_Init' d:/espressif/tools/riscv32-esp-elf/esp-2021r2-patch3-8.4.0/riscv32-esp-elf/bin/../lib/gcc/riscv32-esp-elf/8.4.0/../../../../riscv32-esp-elf/bin/ld.exe: d:\espressif\frameworks\esp-idf-v4.3.5\examples\wifi\esp32_config_wifi\build/../main/softap_example_main.c:166: undefined reference to `pcd_lpcd_start' d:/espressif/tools/riscv32-esp-elf/esp-2021r2-patch3-8.4.0/riscv32-esp-elf/bin/../lib/gcc/riscv32-esp-elf/8.4.0/../../../../riscv32-esp-elf/bin/ld.exe: d:\espressif\frameworks\esp-idf-v4.3.5\examples\wifi\esp32_config_wifi\build/../main/softap_example_main.c:168: undefined reference to `pcd_lpcd_application' d:/espressif/tools/riscv32-esp-elf/esp-2021r2-patch3-8.4.0/riscv32-esp-elf/bin/../lib/gcc/riscv32-esp-elf/8.4.0/../../../../riscv32-esp-elf/bin/ld.exe: d:\espressif\frameworks\esp-idf-v4.3.5\examples\wifi\esp32_config_wifi\build/../main/softap_example_main.c:171: undefined reference to `pcd_lpcd_start' collect2.exe: error: ld returned 1 exit status ninja: build stopped: subcommand failed. ninja failed with exit code 1

2023-05-31 上传