First things first, unless you're compiling on an XP machine your path is wrong. If you copy and pasted this from a tutorial then it is probably an older one.
After that part is out of the way, you need to tell g++.exe to include the path where your header files are located. This is done with the -B option as stated in the man page for this application.
Try removing "SFML/" after the "/include/" in your argument to -B. I'm looking at the SFML folder structure right now and with the way you are including that header, you are telling it to look for ".../SFML-2.3/include/SFML/SFML/Window.hpp" in which case the compiler is correct, that won't exist.
To be honest, I'm not sure. I can tell you that you're getting that error because something that is supposed to be defining the '_WIN32' preprocesser is defining '__unix__' but none of the other macros on Lines 71 - 94. I'm trying to dig up where the compiler might be seeing __unix__.
The reason _WIN32 is not defined is probably because you use Cygwin. I have never used it myself so I'm not sure but from my understanding Cygwin tries to emulate a POSIX/Unix-like enviroment so I guess that's why it defines the __unix__ macro.
I'm afraid I don't know how to solve the problem. A quick search seems to suggest it's not that easy. It's probably easier to get it to work using something like MinGW instead of Cygwin.
^Thanks, I used something else as Cygwin, and I don't get the Unix-error anymore. But MinGW and Cygnus also ain't working. They gave errors that specific files (SFML) ain't found etc.