Why wouldn't the compiler access nuttx/drivers/ioexpander/pcf8575.h?
Access to internal driver files by applications is specifically
forbidden. This is part of the enforcement of the modular design to
assure that people do not do that kind of thing: Applications must not
have access to the internal implementation of drivers.
Never mind, I misread the ultra tiny fonts in the image. include/nuttx/
holds the public interface to the driver (vs. the internal private
definitions for the driver in drivers/). Anything under include/ should
be include-able by your application.