[GRASS-dev] Improving the G_calloc: unable to allocate xx bytes of memory message?
glynn at gclements.plus.com
Wed Nov 5 23:59:55 PST 2014
Radim Blazek wrote:
> > +++ include/Make/Compile.make (working copy)
> > +ALL_CFLAGS = $(LFS_CFLAGS) $(EXTRA_CFLAGS) $(NLS_CFLAGS) $(DEFS) $(EXTRA_INC) $(INC) -DRELDIR=\"$(RELDIR)\"
> > +#define G_malloc(n) G__malloc(RELDIR "/" __FILE__, __LINE__, (n))
> > +#define G_calloc(m, n) G__calloc(RELDIR "/" __FILE__, __LINE__, (m), (n))
> > +#define G_realloc(p, n) G__realloc(RELDIR "/" __FILE__, __LINE__, (p), (n))
> With RELDIR defined in Grass.make it is impossible to compile anything
> with GRASS libs without GRASS build system. Could you please add the
> RELDIR definition to some header file?
$(RELDIR) is just $(CURDIR) minus $(GRASS_HOME):
RELDIR := $(subst $(GRASS_HOME)/,,$(CURDIR))
Like $(CURDIR), it's different for each subdirectory, so it's not
something which can be put into a header file.
However, it's also not used for anything other than error messages, so
compiling with e.g. -DRELDIR= or -DRELDIR=\"$(CURDIR)\" is safe.
I've added a fallback in r62632.
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev