Espressif SPI and GPIO expander

aren't you using the Arduino IDE to build your code?

you can certainly compile C code with gcc. name file .cpp