-
Notifications
You must be signed in to change notification settings - Fork 8k
Open
Labels
Description
Answers checklist.
- I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
- I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
- I have searched the issue tracker for a similar issue and not found a similar issue.
IDF version.
v5.4.2
Operating System used.
Linux
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
None
What is the expected behavior?
- Please consider splitting toolchains so that only the required ISA/chip-specific libraries are installed. (esp-idf only splits toolchains by cpu archtecture currently, which is not enough. Should also split by variants)
- Clean the downloaded tarball after extraction
What is the actual behavior?
When installing ESP-IDF tools for a specific chip, it will download the toolchain package including library variants for other chips under same architecture, even many those not needed.
For example, selecting only esp32
./install.sh esp32will install:
idf_tools/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/xtensa-esp-elf/lib ------------------------------------------
/..
212.0 MiB [#####################] /esp32
106.8 MiB [########## ] /esp32s2
105.9 MiB [########## ] /esp32s3
...
Selecting only esp32-c3
./install.sh esp32c3will install rv32i, rv32imc, rv32imac, rv32imafc, while only one needed:
idf_tools/tools/riscv32-esp-elf/esp-14.2.0_20241119/riscv32-esp-elf/riscv32-esp-elf/lib ---------------------------------------
/..
162.1 MiB [#####################] /rv32i_zicsr_zifencei
160.8 MiB [#################### ] /rv32imc_zicsr_zifencei
160.7 MiB [#################### ] /rv32imac_zicsr_zifencei
160.2 MiB [#################### ] /rv32imafc_zicsr_zifencei_zba_zbb_zbc_zbs
159.9 MiB [#################### ] /rv32imafc_zicsr_zifencei
...
Resulting in:
idf_tools/tools ---------------------------------------------------------------------------------------------------------------
/..
2.0 GiB [#####################] /riscv32-esp-elf
1.0 GiB [########## ] /xtensa-esp-elf
90.1 MiB [ ] /xtensa-esp-elf-gdb
88.5 MiB [ ] /riscv32-esp-elf-gdb
30.4 MiB [ ] /esp32ulp-elf
19.9 MiB [ ] /openocd-esp32
6.6 MiB [ ] /esp-rom-elfs
This leads to unnecessary disk usage.
( And tarball should be deleted after extracting, but actually not ) :
idf_tools/dist ----------------------------------------------------------------------------------------------------------------
/..
284.3 MiB [#####################] riscv32-esp-elf-14.2.0_20241119-x86_64-linux-gnu.tar.xz
166.6 MiB [############ ] xtensa-esp-elf-14.2.0_20241119-x86_64-linux-gnu.tar.xz
29.6 MiB [## ] xtensa-esp-elf-gdb-14.2_20240403-x86_64-linux-gnu.tar.gz
29.3 MiB [## ] riscv32-esp-elf-gdb-14.2_20240403-x86_64-linux-gnu.tar.gz
10.6 MiB [ ] esp32ulp-elf-2.38_20240113-linux-amd64.tar.gz
Request:
- Please consider splitting toolchains so that only the required ISA/chip-specific libraries are installed. (esp-idf only splits toolchains by cpu archtecture currently, which is not enough. Should also split by variants)
- Clean the downloaded tarball after extraction
Steps to reproduce.
Use esp-idf. Install toolchain (./install.sh)
Build or installation Logs.
Diagnostic report archive.
No response
More Information.
No response