Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

2
  • So from your reply i understand that Cygwin just provides the POSIX APIs for some function call, so the same code can be executed under windws without changes in the code. But what is that 'thing/component' called, which enables a compiler (gcc) to generate a Linux specific executable. In other words, Can a gcc compiler on linux system be able to generate a windows executable which can be run on Windows system, by giving some options to gcc?
    – goldenmean
    Commented Nov 10, 2010 at 13:41
  • Building a Windows executable on Linux requires a cross compiler. In other words, you need to invoke a different compiler; options won't do. Some Linux distributions have MinGW packages, whereby the actual gcc is called i686-pc-mingw32-gcc or some such. But again, if your program uses POSIX/Linux functions, you won't be able to build it with a MinGW compiler without changes. Cross compilers for building Cygwin programs on Linux also exist, but I don't think any distros ship with one.
    – ak2
    Commented Nov 10, 2010 at 13:47