[GRASS-dev] off_t question
Glynn Clements
glynn at gclements.plus.com
Mon Apr 1 23:22:11 PDT 2013
Martin Landa wrote:
> 2013/4/1 Martin Landa <landa.martin at gmail.com>
>
> [...]
>
> > gcc -E sizes.c -D_FILE_OFFSET_BITS=64 | grep off_t
> > typedef __off64_t off_t;
>
> the reason is that __off64_t is defined on my machine (shouldn't be
> long long int?) also as
>
> typedef long int __off64_t;
>
> So PRI_OFF_T in gis.h should be probably fixed.
What should be fixed is this part in Grass.make:
# crude hack for vector LFS, LFS_FLAGS should be set by configure
ifdef USE_LARGEFILES
LFS_CFLAGS = -D_FILE_OFFSET_BITS=64
endif
_FILE_OFFSET_BITS shouldn't be set on a system with a 64-bit "long".
The main problem is that the LFS tests were taken wholesale from
cdrtools and no-one understands them.
On the plus side, the warnings don't indicate a real problem. They
arise because C considers "long int" and "long long int" to be
distinct types even when they have the same size and representation.
--
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev
mailing list