lib/gis compile errors [was: Re: [GRASS-dev] Re: testing native winGRASS]

Moritz Lennert mlennert at club.worldonline.be
Sat May 19 09:44:22 EDT 2007


On Fri, May 18, 2007 20:13, Glynn Clements wrote:

>
> I've added G_vspawn_ex(), which takes an argument array as
> "const char **" instead of a variable-length argument list.
>

This commit seems to have introduced a few bugs, at least in MinGW:

/c/grasssrc/grass6/lib/gis:$ make
gcc -I/c/grasssrc/grass6/dist.i686-pc-mingw32/include
-I/c/grasslibs/include -g -O2  -I/c/grasslibs/include     
-DPACKAGE=\""grasslibs"\" -D_FILE_OFFSET_BITS=64   
-DPACKAGE=\""grasslibs"\" 
-I/c/grasssrc/grass6/dist.i686-pc-mingw32/include \
        -o OBJ.i686-pc-mingw32/asprintf.o -c asprintf.c
asprintf.c: In function `G_vasprintf':
asprintf.c:67: error: 'ap' redeclared as different kind of symbol
asprintf.c:65: error: previous definition of 'ap' was here
make: *** [OBJ.i686-pc-mingw32/asprintf.o] Error 1


In the file you have:

int G_vasprintf(char **out, const char *fmt, va_list ap)
 {
     va_list ap;
     int ret_status = EOF;

erasing the second declaration of va_list makes compilation of lib/gis go
further, until:

gcc -I/c/grasssrc/grass6/dist.i686-pc-mingw32/include
-I/c/grasslibs/include -g -O2  -I/c/grasslibs/include     
-DPACKAGE=\""grasslibs"\" -D_FILE_OFFSET_BITS=64   
-DPACKAGE=\""grasslibs"\" 
-I/c/grasssrc/grass6/dist.i686-pc-mingw32/include \
        -o OBJ.i686-pc-mingw32/spawn.o -c spawn.c
spawn.c: In function `G_spawn':
spawn.c:81: warning: passing arg 3 of `_spawnv' from incompatible pointer
type
spawn.c: At top level:
spawn.c:182: error: field `old_act' has incomplete type
make: *** [OBJ.i686-pc-mingw32/spawn.o] Error 1

Don't know how to solve this one.

Moritz




More information about the grass-dev mailing list