[GRASS-dev] Untangling geoPAT installation when updating GRASS version

Vaclav Petras wenzeslaus at gmail.com
Sat Feb 24 18:52:18 PST 2018


Dear all,

this may not address this specific problem with multiple installations, but
it may help overall with debugging such problems because it is more direct.
I'm attaching a geoPAT patch which deals with the names of the libraries
and removes the need to modify GRASS source code before the compilation
happens.

The following command executed in the directory with the source code should
be sufficient to compile modules with a self-compiled GRASS which is not in
system:

make MODULE_TOPDIR=~/.../trunk/ GRASS_VERSION_NUMBER=7.5.svn

Path to the GRASS GIS installation/code/dev files and the version needs to
be provided. This was tested with the current trunk in a home directory and
not with GRASS installed (`make install`-ed) in the system. Nevertheless
this removes the need to modify the source code and thus increasing
compatibility with different GRASS versions (which change the copied and
modified file).

Besides the limited testing, there are three other issues:

1) g.extension is not able to install the code from a directory (or ZIP,
...) because no system for C addon modules with libraries is in place (same
issue as with r.pi.* suite). When GRASS_VERSION_NUMBER is added to
g.extension code and HTML for the main directory is resolved/or ignored in
g.extension, modules at least compile, but nothing is installed (added) to
the local addons directory.

2) I don't understand why GRASS_VERSION_NUMBER isn't already defined.

3) I don't know how to contribute to the geoPAT repository.

Best,
Vaclav



On Fri, Feb 23, 2018 at 6:22 PM, Dylan Beaudette <dylan.beaudette at gmail.com>
wrote:

> How about your GRASS "development" files: installed via package
> manager? Same version as the binaries?
>
> D
>
> On Fri, Feb 23, 2018 at 1:10 PM, Pierre Roudier
> <pierre.roudier at gmail.com> wrote:
> > Thanks Dylan,
> >
> > I did install using `sudo sh install.sh grass72` -- then `sudo sh
> install.sh
> > grass74` after my Grass version got updated to 7.4
> >
> > Cheers,
> >
> > P
> >
> > On 23 February 2018 at 18:41, Dylan Beaudette <dylan.beaudette at gmail.com
> >
> > wrote:
> >>
> >> Howdy Pierre!
> >>
> >> In my experience, the GeoPat modules need to know where several things
> >> are located, including (I think) parts of the GRASS source code. Have
> >> a look through the install.sh code:
> >>
> >> http://sil.uc.edu/gitlist/geoPAT/blob/stable/install.sh
> >>
> >> I was able to get these modules up and running by invoking install.sh
> like
> >> this:
> >>
> >> sh install.sh grass75
> >>
> >> ... where "grass75" is the binary compiled from grass_trunk. The
> >> install.sh code seemed to find the source code it needed and worked
> >> without issue.
> >>
> >> How did you install / upgrade the Geopat modules? Could it be that
> >> install.sh is "finding" the old source code / headers? Is there a
> >> package for both GRASS binaries and development files?
> >>
> >> Dylan
> >>
> >>
> >> On Thu, Feb 22, 2018 at 7:28 PM, Pierre Roudier
> >> <pierre.roudier at gmail.com> wrote:
> >> > Hi,
> >> >
> >> > I've been compiling the geoPAT extensions for GRASS from
> >> > http://sil.uc.edu/gitlist/geoPAT/
> >> >
> >> > At the time I was running GRASS 7.2.2 installed from the Ubuntu GIS
> >> > repository, but since this repo updated to GRASS 7.4, I have the
> >> > following
> >> > issue:
> >> >
> >> > GRASS 7.4.0 (modis_lst_2015):~ > p.sig.polygons --help
> >> > ERROR: Module built against version $Revision: 70617 $ but trying to
> use
> >> >        version $Revision: 70829 $. You need to rebuild GRASS GIS or
> >> >        untangle multiple installations.
> >> > [Raster MASK present]
> >> >
> >> > Any pointers about how to resolve the version tangling? I've tried
> >> > recompiling geoPAT, but that didn't work.
> >> >
> >> > Cheers,
> >> >
> >> > Pierre
> >> >
> >> > _______________________________________________
> >> > grass-dev mailing list
> >> > grass-dev at lists.osgeo.org
> >> > https://lists.osgeo.org/mailman/listinfo/grass-dev
> >
> >
> _______________________________________________
> 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/20180224/4b90861c/attachment.html>
-------------- next part --------------
diff -urN geoPAT-3a75addf/p.sig.grid/Makefile geoPAT/p.sig.grid/Makefile
--- geoPAT-3a75addf/p.sig.grid/Makefile	2016-03-05 01:15:31.000000000 -0500
+++ geoPAT/p.sig.grid/Makefile	2018-02-24 20:16:32.576234715 -0500
@@ -2,6 +2,8 @@
 
 PGM=p.sig.grid
 
+include ../similarlib/Similar.make
+
 LIBES = $(SIMILARLIB) $(GPROJLIB) $(RASTERLIB) $(GISLIB) $(MATHLIB) 
 DEPENDENCIES = $(SIMILARDEP) $(GPROJDEP) $(RASTERDEP) $(GISDEP) 
 EXTRA_INC = $(PROJINC)
diff -urN geoPAT-3a75addf/p.sig.points/Makefile geoPAT/p.sig.points/Makefile
--- geoPAT-3a75addf/p.sig.points/Makefile	2016-03-05 01:15:31.000000000 -0500
+++ geoPAT/p.sig.points/Makefile	2018-02-24 20:16:27.336234588 -0500
@@ -2,6 +2,8 @@
 
 PGM = p.sig.points
 
+include ../similarlib/Similar.make
+
 LIBES = $(SIMILARLIB) $(RASTERLIB) $(GISLIB) $(MATHLIB) $(VECTORLIB) $(DBMILIB)
 DEPENDENCIES = $(SIMILARDEP) $(RASTERDEP) $(GISDEP) $(VECTORDEP) $(DBMIDEP)
 EXTRA_CFLAGS= -I ../similarlib $(VECT_CFLAGS)
diff -urN geoPAT-3a75addf/p.sig.polygons/Makefile geoPAT/p.sig.polygons/Makefile
--- geoPAT-3a75addf/p.sig.polygons/Makefile	2016-03-05 01:15:31.000000000 -0500
+++ geoPAT/p.sig.polygons/Makefile	2018-02-24 20:56:57.588293179 -0500
@@ -2,6 +2,8 @@
 
 PGM = p.sig.polygons
 
+include ../similarlib/Similar.make
+
 LIBES = $(SIMILARLIB) $(RASTERLIB) $(GISLIB) $(MATHLIB)
 DEPENDENCIES = $(SIMILARDEP) $(RASTERDEP) $(GISDEP)
 EXTRA_CFLAGS= -I ../similarlib
diff -urN geoPAT-3a75addf/p.sim.compare/Makefile geoPAT/p.sim.compare/Makefile
--- geoPAT-3a75addf/p.sim.compare/Makefile	2016-03-05 01:15:31.000000000 -0500
+++ geoPAT/p.sim.compare/Makefile	2018-02-24 20:16:10.448234181 -0500
@@ -2,6 +2,8 @@
 
 PGM = p.sim.compare
 
+include ../similarlib/Similar.make
+
 LIBES = $(SIMILARLIB) $(RASTERLIB) $(GISLIB) $(MATHLIB)
 DEPENDENCIES = $(SIMILARDEP) $(RASTERDEP) $(GISDEP)
 EXTRA_CFLAGS= -I ../similarlib
diff -urN geoPAT-3a75addf/p.sim.distmatrix/Makefile geoPAT/p.sim.distmatrix/Makefile
--- geoPAT-3a75addf/p.sim.distmatrix/Makefile	2016-03-05 01:15:31.000000000 -0500
+++ geoPAT/p.sim.distmatrix/Makefile	2018-02-24 20:16:03.216234007 -0500
@@ -2,6 +2,8 @@
 
 PGM = p.sim.distmatrix
 
+include ../similarlib/Similar.make
+
 LIBES = $(SIMILARLIB) $(RASTERLIB) $(GISLIB) $(MATHLIB)
 DEPENDENCIES = $(SIMILARDEP) $(RASTERDEP) $(GISDEP)
 EXTRA_CFLAGS= -I ../similarlib
diff -urN geoPAT-3a75addf/p.sim.search/Makefile geoPAT/p.sim.search/Makefile
--- geoPAT-3a75addf/p.sim.search/Makefile	2016-03-05 01:15:31.000000000 -0500
+++ geoPAT/p.sim.search/Makefile	2018-02-24 20:14:32.844231828 -0500
@@ -2,6 +2,8 @@
 
 PGM = p.sim.search
 
+include ../similarlib/Similar.make
+
 LIBES = $(SIMILARLIB) $(RASTERLIB) $(GISLIB) $(MATHLIB)
 DEPENDENCIES = $(SIMILARDEP) $(RASTERDEP) $(GISDEP)
 EXTRA_CFLAGS= -I ../similarlib
diff -urN geoPAT-3a75addf/p.sim.segment/Makefile geoPAT/p.sim.segment/Makefile
--- geoPAT-3a75addf/p.sim.segment/Makefile	2016-03-05 01:15:31.000000000 -0500
+++ geoPAT/p.sim.segment/Makefile	2018-02-24 20:15:42.124233498 -0500
@@ -2,6 +2,8 @@
 
 PGM = p.sim.segment
 
+include ../similarlib/Similar.make
+
 LIBES = $(SIMILARLIB) $(RASTERLIB) $(GISLIB) $(MATHLIB) $(VECTORLIB) $(DBMILIB)
 DEPENDENCIES = $(SIMILARDEP) $(RASTERDEP) $(GISDEP) $(VECTORDEP) $(DBMIDEP)
 EXTRA_CFLAGS= -I ../similarlib $(VECT_CFLAGS)
diff -urN geoPAT-3a75addf/similarlib/Makefile geoPAT/similarlib/Makefile
--- geoPAT-3a75addf/similarlib/Makefile	2016-03-05 01:15:31.000000000 -0500
+++ geoPAT/similarlib/Makefile	2018-02-24 20:58:02.568294745 -0500
@@ -1,6 +1,7 @@
 MODULE_TOPDIR = ../../..
 
 include $(MODULE_TOPDIR)/include/Make/Vars.make
+include ../similarlib/Similar.make
 
 LIB = SIMILAR
 
diff -urN geoPAT-3a75addf/similarlib/Similar.make geoPAT/similarlib/Similar.make
--- geoPAT-3a75addf/similarlib/Similar.make	1969-12-31 19:00:00.000000000 -0500
+++ geoPAT/similarlib/Similar.make	2018-02-24 20:44:29.972275155 -0500
@@ -0,0 +1,6 @@
+include $(MODULE_TOPDIR)/include/Make/Grass.make
+
+local_libs = \
+	SIMILAR:similar
+
+$(foreach lib,$(local_libs),$(eval $(call lib_rules,$(firstword $(subst :, ,$(lib))),$(lastword $(subst :, ,$(lib))))))


More information about the grass-dev mailing list