[freetds] Can configure but failes with make

Lowden, James K LowdenJK at bernstein.com
Wed Apr 16 15:49:47 EDT 2003


> From: Hirsch, Jonathan [mailto:jonathan.hirsch at gs.com]
> Sent: April 16, 2003 2:34 PM
> 
> I can run configure ok but I fail when I try to run make. Any 
> suggestions?

I take it something changed?  Last I heard, you couldn't run configure.  

configure inspected your machine, looking for asprintf(), and determined you
have none.  To check me, look in config.h; you'll find HAVE_ASPRINTF is not
defined.  Then make tries to build our replacement for asprintf(), and fails
because it can't find the required definitions.  To top it off, the
definition it wants is in the pre-standard varargs.h file, instead of
stdarg.h:

$ grep va_a*list /usr/include/varargs.h /usr/include/stdarg.h
...
/usr/include/varargs.h:#define  va_alist        __builtin_va_alist
...
/usr/include/varargs.h: ((ap) = (va_list)&__builtin_va_alist)
/usr/include/stdarg.h:typedef _BSD_VA_LIST_     va_list;
/usr/include/stdarg.h:  ((ap) = (va_list)__builtin_next_arg(last))

src/replacements/asprintf.c is bone simple.  Your system doesn't need it,
I'm sure, but you should be able to compile it with just "cc asprintf.c".
Else something is up with the base system.  

It looks from here that you have to tell cc where to look for your include
files.  Solaris must have asprintf(), so grepping for that should locate the
right include directory.  On my system, it's defined in stdio.h, not exactly
an out-of-the-way location.  Set your CFLAGS accordingly.  I'm still
puzzled, though, because I can't understand how your machine could build
anything successfully, and still cause configure to fail to notice
asprintf().  Is there more than one stdio or stdarg on your system?  

--jkl


> 
> # make
...
> Making all in replacements
> source='asprintf.c' object='asprintf.lo' libtool=yes \
> depfile='.deps/asprintf.Plo' tmpdepfile='.deps/asprintf.TPlo' \
> depmode=gcc /bin/bash ../../depcomp \
> /bin/bash ../../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I.
> -I../../include  -I../../include  -D_FREETDS_LIBRARY_SOURCE 
> -DTDS50 -Wall
> -Wstrict-prototypes -Wmissing-prototypes  -g -O2 -c -o 
> asprintf.lo `test -f
> 'asprintf.c' || echo './'`asprintf.c
> mkdir .libs
> gcc -DHAVE_CONFIG_H -I. -I. -I../../include -I../../include
> -D_FREETDS_LIBRARY_SOURCE -DTDS50 -Wall -Wstrict-prototypes
> -Wmissing-prototypes -g -O2 -c asprintf.c 
> -Wp,-MD,.deps/asprintf.TPlo  -fPIC
> -DPIC -o .libs/asprintf.o
> asprintf.c: In function `asprintf':
> asprintf.c:24: `__builtin_va_alist' undeclared (first use in 
> this function)
> asprintf.c:24: (Each undeclared identifier is reported only once
> asprintf.c:24: for each function it appears in.)
> asprintf.c:22: warning: `ap' might be used uninitialized in 
> this function
> *** Error code 1
> make: Fatal error: Command failed for target `asprintf.lo'
> Current working directory
> /export/opt3/tempinst/freetds-0.61/src/replacements
> *** Error code 1
> make: Fatal error: Command failed for target `all-recursive'
> Current working directory /export/opt3/tempinst/freetds-0.61/src
> *** Error code 1
> make: Fatal error: Command failed for target `all-recursive'
> 
> --
> Jonathan Hirsch - User Support Engineering Group
> jonathan.hirsch at gs.com
> Voice 212-902-7029
> Pager 1-888-274-8943
> 
> 
> _______________________________________________
> FreeTDS mailing list
> FreeTDS at lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds
> 


The information contained in this transmission may contain privileged and
confidential information and is intended only for the use of the person(s)
named above.  If you are not the intended recipient, or an employee or agent
responsible for delivering this message to the intended recipient, any
review, dissemination, distribution or duplication of this communication is
strictly prohibited. If you are not the intended recipient, please contact
the sender immediately by reply e-mail and destroy all copies of the
original message. Please note that we do not accept account orders and/or
instructions by e-mail, and therefore will not be responsible for carrying
out such orders and/or instructions.




More information about the FreeTDS mailing list