[GRASS-dev] remove raster map in C code

Markus Metz markus.metz.giswork at gmail.com
Fri May 11 01:54:02 PDT 2018


Hi Luca,

On Fri, May 11, 2018 at 10:26 AM, Luca Delucchi <lucadeluge at gmail.com>
wrote:
>
> Hi devs,
>
> I would like to remove a raster map inside a C module, looking aroung
> I found the M_do_remove function used in g.remove and r.reclass. So I
> tried to use it but I get error in compilation
>
> OBJ.x86_64-pc-linux-gnu/main.o: In function `main':
> main.c:(.text.startup+0x9eb): undefined reference to `M_get_element'
> main.c:(.text.startup+0x9f5): undefined reference to `M_do_remove'
> collect2: error: ld returned 1 exit status

this is a problem of the linker: you need to link against the manage lib,
see e.g. the Makefile for g.remove. Try

LIBES = $(MANAGELIB) $(RASTERLIB) $(GISLIB)
DEPENDENCIES = $(MANAGEDEP) $(RASTERDEP) $(GISDEP)

in the Makefile of your module.

HTH,

Markus M

>
> In the source code of the module I added #include <grass/manage.h>
> that it seems the header containing the definition of M_do_remove.
>
> Any idea?
>
> Thanks in advance
>
> --
> ciao
> Luca
>
> www.lucadelu.org
> _______________________________________________
> grass-dev mailing list
> grass-dev at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/grass-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-dev/attachments/20180511/f1cee1ff/attachment.html>


More information about the grass-dev mailing list