[GRASS-dev] compilation of grass on AIX 7.1

Markus Neteler neteler at osgeo.org
Sat Apr 6 01:56:25 PDT 2013


On Sat, Apr 6, 2013 at 10:21 AM, Markus Neteler <neteler at osgeo.org> wrote:
> On Sat, Apr 6, 2013 at 10:13 AM, Glynn Clements
> <glynn at gclements.plus.com> wrote:
>> Markus Neteler wrote:
> ...
>>> main.c:22: error: storage size of 't' isn't known
>>> make: *** [OBJ.powerpc-ibm-aix5.3.0.0/main.o] Error 1
>>
>> In which directory? main.c could be anything?
>
> Ah sorry: tools/timer/main.c
>
> ...
>> Okay; "struct winsize" isn't actually specified by POSIX, but it
>> should exist somewhere if TIOCGWINSZ is defined. Not necessarily in
>> the same header as the TIOCGWINSZ definition. Again, it may be guarded
>> by a #if/#ifdef.
>>
>> On Linux, it's defined in both asm-generic/termios.h (kernel header)
>> and bits/ioctl-types.h (glibc header).
>
> I found this:
>
> /usr/include> grep TIOCGWINSZ */*
> sys/ioctl.h: * TIOCSWINSZ and TIOCGWINSZ -- in fact they are defined to be the
> sys/ioctl.h:#define     TIOCGSIZE       TIOCGWINSZ
> sys/ioctl.h:#define     TIOCGWINSZ   _IOR('t', 104, struct winsize)
> /* get window size */

I inspected the file and added _ALL_SOURCE=1:

...
checking whether the C compiler (gcc -ansi -D_ALL_SOURCE=1
-D_POSIX_SOURCE=1 -D_POSIX_C_SOURCE=200809L -Dinline= ) works... yes

Now tools/timer/main.c compiles as well as lib/gis/ls.c - hence the
types get defined.

Remains:
lib/gs/plot.c:34: error: conflicting types for 'nearest'

Markus


More information about the grass-dev mailing list