This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
GDB 7.5 on Windows (was: [commit/www] Announce the GDB 7.5 release.)
- From: Eli Zaretskii <eliz at gnu dot org>
- To: Joel Brobecker <brobecker at adacore dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Sat, 18 Aug 2012 15:04:30 +0300
- Subject: GDB 7.5 on Windows (was: [commit/www] Announce the GDB 7.5 release.)
- References: <1345227775-27684-1-git-send-email-brobecker@adacore.com>
- Reply-to: Eli Zaretskii <eliz at gnu dot org>
Thanks for releasing GDB 7.5.
In addition to the problem with "make TAGS", for which I already
committed an obvious fix, I had the following issues when building GDB
with MinGW natively on Windows:
1. Compilation in gdb/ produces gobs of warnings like this:
In file included from defs.h:32,
from gdb.c:19:
d:/usr/include/stdio.h:372: warning: no previous prototype for 'getc'
d:/usr/include/stdio.h:379: warning: no previous prototype for 'putc'
d:/usr/include/stdio.h:386: warning: no previous prototype for 'getchar'
d:/usr/include/stdio.h:393: warning: no previous prototype for 'putchar'
d:/usr/include/stdio.h:535: warning: no previous prototype for 'fopen64'
d:/usr/include/stdio.h:547: warning: no previous prototype for 'ftello64'
d:/usr/include/stdio.h:606: warning: no previous prototype for 'vsnwprintf'
This happens because these are inline functions in MinGW's stdio.h,
but their prototypes are only declared if the inline variants are
not used. For example:
#if !defined _MT
__CRT_INLINE int __cdecl __MINGW_NOTHROW getc (FILE* __F)
{
return (--__F->_cnt >= 0)
? (int) (unsigned char) *__F->_ptr++
: _filbuf (__F);
}
[...]
#else /* Use library functions. */
_CRTIMP int __cdecl __MINGW_NOTHROW getc (FILE*);
My suggestion would be to not use -Wmissing-prototypes when host is
mingw32. (I worked around this by using --enable-gdb-build-warnings.)
2. "make TAGS" displays a warning:
$ make TAGS
Making TAGS
d:\usr\emacs\bin\etags.exe: skipping ./: it is not a regular file.
I couldn't figure out what causes this.