It's been a while, so I'm not sure if it will work on the newer models, but I used to use the xtensa-lx106-elf (patched from crosstool-NG[0]) toolchain to build my ESP8266 project and then upload it wil esptool.py. There was also esp-open-sdk which was an installer for that toolchain and some additional libraries[1].