This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gcc as strictly win32 compiler


Sean McBride wrote:
> I know this is a VERY newbie question, but I have looked on the list
> archives and been confused by the compiler flags for making win apps,
> and the definitions of WIN32 and CYGWIN defines.
>
> I have several straight win32 apps that I wrote using MSVC and I
> simply want to create the executables with gcc rather than MSVC(just
> for fun, does that make me evil?).
>
> I have used gcc with tornado for some embedded apps before, so I am
> not completely unfamiliar with gcc (only for C files though).
>
> I wrote the makefiles, and after a while tinkering with some defines
> and slight syntax changes, I was surprisingly quickly successful at
> getting a code base that compiles on Both MSVC and GCC.  (most of my
> headaches came from MSVC's  implementation of STL)
>
> However, I have a few questions about how this will affect my exes.
>
> Is it possible to compile an exe that does not require the cywin.dll
> if I am not using any of the unix apis and sticking with straight
> win32?  What compiler flags should be used for this and what macros
> do they define?
>
> if not, as I understand it, cygwin.dll interprets many commands and
> uses MSVCRT.dll on the back end.  How do I create a redistributable
> for users without cygwin, and How badly does this hit performance?

Cygwin does not use msvcrt.dll. It uses newlib as its C library, which is
compiled into cygwin1.dll.
You cannot create a redistributable for users without Cygwin. (Short of a
minimal Cygwin install)
If you are not using any of the unix APIs, you may be interested in the
MinGW project (mingw.sf.net). Cygwin's gcc takes the -mno-cygwin option
which causes it to function as a MinGW compiler - i.e. the produced exes use
MSVCRT, not cygwin1.dll.



Max.


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]