Allright, except for the FreeBSD works, I would like to have a working reference point based on Linux Debian 10.10, so I have created a VM.
I could not find detailed information on how to setup RISC-V toolchain except just using "generic toolchain": https://nuttx.apache.org/docs/latest/platforms/risc-v/esp32c3/index.html So I have installed pre-built generic toolchain according to Debian Wiki: https://wiki.debian.org/RISC-V#Pre-built_toolchains I have configured ESP32-C3 target with: ./tools/configure.sh esp32c3-devkit:ble Then during `make` it seems that `esp32c3-devkit` requires different toolchain? $ make Create .version Create version.h make[1]: Entering directory '/home/user/work/nuttx/nuttx.git/nuttx/boards' make[1]: Nothing to be done for 'dirlinks'. make[1]: Leaving directory '/home/user/work/nuttx/nuttx.git/nuttx/boards' make[1]: Entering directory '/home/user/work/nuttx/nuttx.git/apps' make[2]: Entering directory '/home/user/work/nuttx/nuttx.git/apps/platform' LN: platform/board to /home/user/work/nuttx/nuttx.git/apps/platform/dummy make[2]: Leaving directory '/home/user/work/nuttx/nuttx.git/apps/platform' make[1]: Leaving directory '/home/user/work/nuttx/nuttx.git/apps' make[1]: Entering directory '/home/user/work/nuttx/nuttx.git/nuttx/boards' make[2]: Entering directory '/home/user/work/nuttx/nuttx.git/nuttx/boards/risc-v/esp32c3/esp32c3-devkit/src' make[2]: riscv64-unknown-elf-gcc: Command not found make[2]: *** [Makefile:118: /home/user/work/nuttx/nuttx.git/nuttx/boards/risc-v/esp32c3/esp32c3-devkit/scripts/esp32c3_out.ld] Error 127 make[2]: Leaving directory '/home/user/work/nuttx/nuttx.git/nuttx/boards/risc-v/esp32c3/esp32c3-devkit/src' make[1]: *** [Makefile:105: context] Error 2 make[1]: Leaving directory '/home/user/work/nuttx/nuttx.git/nuttx/boards' make: *** [tools/Makefile.unix:341: context] Error 2 OS is Debian 10.10: uname -a Linux vboxdebian 4.19.0-18-amd64 #1 SMP Debian 4.19.208-1 (2021-09-29) x86_64 GNU/Linux Following tools are installed: $ riscv64-linux-gnu- riscv64-linux-gnu-addr2line riscv64-linux-gnu-gcc riscv64-linux-gnu-gcov-8 riscv64-linux-gnu-objcopy riscv64-linux-gnu-ar riscv64-linux-gnu-gcc-8 riscv64-linux-gnu-gcov-dump riscv64-linux-gnu-objdump riscv64-linux-gnu-as riscv64-linux-gnu-gcc-ar riscv64-linux-gnu-gcov-dump-8 riscv64-linux-gnu-pkg-config riscv64-linux-gnu-c++filt riscv64-linux-gnu-gcc-ar-8 riscv64-linux-gnu-gcov-tool riscv64-linux-gnu-ranlib riscv64-linux-gnu-cpp riscv64-linux-gnu-gcc-nm riscv64-linux-gnu-gcov-tool-8 riscv64-linux-gnu-readelf riscv64-linux-gnu-cpp-8 riscv64-linux-gnu-gcc-nm-8 riscv64-linux-gnu-gprof riscv64-linux-gnu-size riscv64-linux-gnu-elfedit riscv64-linux-gnu-gcc-ranlib riscv64-linux-gnu-ld riscv64-linux-gnu-strings riscv64-linux-gnu-g++ riscv64-linux-gnu-gcc-ranlib-8 riscv64-linux-gnu-ld.bfd riscv64-linux-gnu-strip riscv64-linux-gnu-g++-8 riscv64-linux-gnu-gcov riscv64-linux-gnu-nm On FreeBSD there is just one system package for riscv32 and riscv64 so name / package confusion is possible. On Zephyr there is a `west` utility to manage project, it has `espressif` subcommand that can fetch, install, and update local toolchain and utilities. It uses `idf_tools.py` sctipt from ESP-IDF. Recently it was simplified and it just fetches all development for the ESP32 chips (openocd-esp32 riscv32-esp-elf xtensa-esp32-elf xtensa-esp32s2-elf ) into `~/.espressif/tools/zephyr`. I have also sent patches to the upstream that allows FreeBSD to use Linux binaries. https://github.com/espressif/esp-idf/blob/master/tools/idf_tools.py Maybe this tool could be integrated with NuttX or should I use it by hand before using NuttX? :-) -- CeDeROM, SQ7MHZ, http://www.tomek.cedro.info