This is the mail archive of the cygwin 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: Error building run2 from source package in win7


On 5/24/2011 2:38 PM, David Sastre wrote:

>> hmm...maybe the OP should check his generated config.h file for the
>> offending def.  If it's there, a quick look inside config.log should
>> tell you why 'checking for an ANSI C-conforming const' is reporting 'no'.
> 
> $ grep -nR "define const" run2-0.4.0-1/build/config.h
> 152:#define const /**/
> 
> From the config.log:
> 
> configure:12737: checking for an ANSI C-conforming const
> configure:12802: gcc -c -Wall -Werror  conftest.c >&5
> cc1: warnings being treated as errors
> conftest.c: In function 'main':
> conftest.c:69:10: error: 't' is used uninitialized in this function
> conftest.c:85:23: error: 'b' may be used uninitialized in this function

Looks like a possible bug in autoconf, which is where the definition of
AC_C_CONST comes from -- or they might define this as PIBKAC (see
below).  The test really ought to be -Wall -Werror friendly, but that's
up to the autoconf guys.

Here's a simple test case:

configure.ac
AC_INIT([test])
AC_CONFIG_SRCDIR([configure.ac])
AC_C_CONST

$ autoconf
$ ./configure
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for an ANSI C-conforming const... yes


$ ./configure CFLAGS="-Wall -Werror"
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for an ANSI C-conforming const... yes

Hmm...that works fine.  What about:

$ ./configure CC="gcc -Wall -Werror"
checking for gcc... gcc -Wall -Werror
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc -Wall -Werror accepts -g... yes
checking for gcc -Wall -Werror option to accept ISO C89... none needed
checking for an ANSI C-conforming const... no


A-ha!

Don't set -Werror as part of $CC, set it in $CFLAGS instead.

--
Chuck

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


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