Normally if you use --with-newlib the compiler will build the gcc
support library, libgcc, without requiring any external support from the
C library. Using --without-headers will disable that, and the gcc
support library will be built without requiring any library support.
This disables a few features which are generally uninteresting for
embedded systems.
--with-newlib is still useful even when using --without-headers, because
the newlib header files will be used for libraries other than libgcc,
such as libstdc++.
Ian