[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Ubuntu] problem building GRASS add-ons



Hi,

On Wed, 29 Sep 2010 10:30:56 +0200,
"Francesco P. Lovergine" <frankie@debian.org> wrote:

> On Tue, Sep 28, 2010 at 02:25:11PM -0700, Hamish wrote:
> > Taylor Hermes wrote:
> > > I'm running Ubuntu 10.04 and GRASS
> > > 6.4.0 rc6.  I would like to install
> > > the GRASS add-ons available from the SVN, but when I
> > > attempt to 'make
> > > MODULE_TOPDIR=/usr/lib/grass64' I get an error.
> > > 
> > > mkdir -p
> > > /build/buildd/grass-6.4.0~rc6/bin.x86_64-pc-linux-gnu
> > > mkdir: невозможно создать каталог
> > > «/build»: Отказано в доступе
> > > make: ***
> > > [/build/buildd/grass-6.4.0~rc6/bin.x86_64-pc-linux-gnu]
> > > Ошибка
> > > 
> > > I have the grass-dev package installed and followed the
> > > directions
> > > available here:http://grass.osgeo.org/wiki/Compile_and_Install#Addons
> > 
> > 
> > Hi there,
> > 
> > it's a known problem we are actively working on. right now it
> > only really works well if you build GRASS from source yourself.
> > 
> > the main thing is that paths in 
> >  /usr/lib/grass64/include/Make/Platform.make
> > need to be edited to refer to the final install directory, not
> > the temporary packaging directory on the build server.
> > 
> > I am undecided if the fix belongs in upstream packaging rules
> > (cc debiangis) or in upstream 'make install' (grass-dev).
> > ?

> I guess you mean

> # GRASS dirs
> GRASS_HOME = /build/buildd-grass_6.4.0~rc6+42329-1+b1-i386-7qc3Bn/grass-6.4.0~rc6+42329
> RUN_GISBASE = /build/buildd-grass_6.4.0~rc6+42329-1+b1-i386-7qc3Bn/grass-6.4.0~rc6+42329/dist.i486-pc-linux-gnu
> RUN_GISRC = ${ARCH_DISTDIR}/demolocation/.grassrc${GRASS_VERSION_MAJOR}${GRASS_VERSION_MINOR}

> which should be:

> GRASS_HOME = /usr/lib/grass64
> RUN_GISBASE = /usr/lib/grass64 ?

> but what about the other dir?

I was just trying to build an add-on module and discovered this problem,
which led me to these variables and this thread.  I'm wondering whether
the convention used in the R Debian packages (I'm cc'ing the maintainer
here, in case he has some suggestions) shouldn't be used here as well:

,-----[ /etc/R/Renviron (lines: 44 - 48) ]
| # edd Apr 2003  Allow local install in /usr/local, also add a directory for
| #               Debian packaged CRAN packages, and finally the default dir 
| # edd Jul 2007  Now use R_LIBS_SITE, not R_LIBS
| R_LIBS_SITE=${R_LIBS_SITE-'/usr/local/lib/R/site-library:/usr/lib/R/site-library:/usr/lib/R/library'}
`-----

This has been working very nicely for a long time.  Considering GRASS
add-ons that the user wants to build and install locally as analogous to
R packages that the user wants to install locally, then it would make
sense to have GRASS add-on modules installed in /usr/local/lib/grass64.
A similar logic seems to be followed for Emacs libraries, which can be
installed in /usr/local/share/emacs/site-lisp.

In the meantime, should we simply edit these variables in
/usr/lib/grass64/include/Make/Platform.make ?

Cheers,

-- 
Seb
p.s. re-posting to new Gmane group


Reply to: