# µEforth / ESP32forth This EForth inspired implementation of Forth is bootstraped from a minimalist C kernel. ## Building from Source To build from source: ``` sudo apt install ninja-build gcc-arm-none-eabi git clone https://github.com/flagxor/ueforth cd ueforth ./configure.py ninja ``` The resulting output will have this structure: * out/deploy - A copy of the eforth.appspot.com / esp32forth.appspot.com ready to deploy. * out/esp32 - A source build for ESP32. * out/esp32-sim - A POSIX build approximating ESP32 for testing. * out/pico-ice - A build for pico-ice. * out/pico-ice-sim - A POSIX build approximating pico-ice for testing. * out/gen - Intermediate / generated files. * out/posix - A build for Linux / POSIX. * out/resources - Intermediate / generated resources. * out/web - A build for Web. * out/windows - A build for Windows. Individual platforms can be built as follows: ``` ninja posix ninja esp32 ninja pico-ice ninja win32 ninja win64 ninja web ``` A build that excludes the slower components can be configured with: ``` ./configure.py -f ``` To install to /usr/bin on Linux / POSIX do: ``` ninja install ``` ESP32 boards can be compiled and flashed with: ``` ninja esp32-flash ninja esp32s2-flash ninja esp32s3-flash ninja esp32c3-flash ninja esp32cam-flash ``` Set PORT=com3 etc. to select board.