Hast Du vielleicht in nen Pfad installiert, der Sonderzeichen enthält?

Wenn io.h nicht gefunden wird, sollte schon das eine Fehlermeldung geben.
Was sagt der Aufruf, wenn zudem noch -v angeben wird?

Zudem ist es unwahrscheinlich, daß ein *.h compiliert wird, lass das mal weg, steht wohl als include im *.c.

::Edit::

Nochwas: -O3 ist übel, nimm -O2 oder -Os