This is the mail archive of the
mailing list for the Cygwin project.
Re: CygWin + gcc to build Windows application written in C.
- From: Tim Prince <tprince at myrealbox dot com>
- To: Piero Silvestri <psilvestri at omnicad dot com>
- Cc: cygwin at cygwin dot com
- Date: Thu, 15 Dec 2005 05:45:40 -0800
- Subject: Re: CygWin + gcc to build Windows application written in C.
- References: <000401c60165$0ff24c60$0300a8c0@Piero>
- Reply-to: tprince at computer dot org
Piero Silvestri wrote:
Brain wrote:-mno-cygwin is supported by "cygwin-special" patches to standard gcc.
This is among the obstacles to keeping cygwin up to date with respect to
gcc. mingw appears more difficult to support anyway, judging by the
results (rarely) posted to gcc-testsuites.
-mno-cygwin essentially turns gcc into the gcc provided by mingw.org.
Read the docs/wiki/faq/etc at that site for more information. Note that
when you use gcc -mno-cygwin your search paths will be modified so that
no Cygwin libraries/headers will be found, instead the mingw ones will
be searched (/usr/include/mingw, /usr/lib/mingw). Essentially this is
just a shortcut for compiling with the mingw toolchain under Cygwin - do
not get confused and think that this somehow lets you use Cygwin library
functions in any shape or form. If you use mingw or -mno-cygwin, you
are essentially programming directly at the win32 API and the MSVCRT,
you have no unix emulation at all other than what is provided by the
microsoft C library.
Thanks Brian, now -mwindows is clear to me, and the strange linker
problem has gone, but I have one more question on -mno-cygwin option.
When I installed the latest release of Cygwin I found gcc 3.4.4 in its
packages, which I installed as well; and if I use it with the
-mno-cygwin option when compiling everything's allright.
But then I downloaded the gcc 4.0.2 sources, which I compiled in Cygwin
with the old gcc provided, so now I have a second version of gcc
currently working. The problem is that this version has some problem
with the -mno-cygwin option; if I use it when compiling I get the error
message: "gcc: installation problem, cannot exec 'cc1': No such file or
directory". Do you think that this is a CygWin's configuration problem
or a gcc one?
gcc-4.x use mpfr; it's not clear to me how it can be installed from the
cygwin setup, but the "upstream" version works "out of the box."
Going further on, more recent gfortran and libstdc++ versions employ
__builtin_pow, and that is failing for my installation. I suppose I'll
have to search for a work-around.
Recent versions of libstdc++ build only with -k ("ignore errors"). That
problem is not entirely limited to cygwin. It seems to be a more
strict parsing of headers.
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html