[GRASS-user] can not install addons with g.extension

Robert Nuske rnuske at gwdg.de
Fri Feb 13 06:01:45 PST 2015


Hi Martin,

> > mkdir -p /usr/lib/grass70/docs/man
> > mkdir: cannot create directory '/usr/lib/grass70/docs/man': Permission
> > denied make: *** [/usr/lib/grass70/docs/man] Error 1
> > ERROR: Compilation failed, sorry. Please check above error messages.
> 
> I fixed this bug in r64534 (trunk only), after some testing I will
> backport it to relbr70.

Thanks for the fix. 
Since the fix was recently added to relbr7 and the patch is in today’s daily 
launchpad build of GRASS 7, I tested g.extension again on my ubuntu box.

System:        ubuntu 14.04   64bit
Python:        2.7.6
GRASS Package: 7.0.0+1svn64600~ubuntu14.04.1


Findings:
- The problem with writing to /usr/lib is fixed  :-)
- g.html2man.py is still not found
  The Python script is named g.html2man (see below 1.)
- After creating a symlink for g.html2man.py: Python Module "html" not found
  ImportError: No module named html (see below 2.)


cheers
  robert



1. Test as Standard User 
================================================================
GRASS 7.0.0 (test_location):~ > g.extension extension=r.grow.shrink --verbose
Fetching <r.grow.shrink> from GRASS-Addons SVN repository (be patient)...
A    r.grow.shrink/DEPRECATED
A    r.grow.shrink/main.c
A    r.grow.shrink/Makefile
A    r.grow.shrink/r.grow.shrink.html
 U   r.grow.shrink
Checked out revision 64604.
Compiling...
mkdir -p /tmp/tmpPv5j8I/r.grow.shrink/bin
mkdir -p /tmp/tmpPv5j8I/r.grow.shrink/etc
mkdir -p /tmp/tmpPv5j8I/r.grow.shrink/docs/html
mkdir -p /tmp/tmpPv5j8I/r.grow.shrink/docs/man
mkdir -p /tmp/tmpPv5j8I/r.grow.shrink/docs/man/man1
test -d OBJ.x86_64-pc-linux-gnu || mkdir -p OBJ.x86_64-pc-linux-gnu
gcc  -Wall -g -O   -I/usr/lib/grass70/include -I/usr/lib/grass70/include    -
DPACKAGE=\""grassmods"\"   -I/usr/lib/grass70/include -
I/usr/lib/grass70/include -DRELDIR=\"/tmp/tmpPv5j8I/r.grow.shrink\" -o 
OBJ.x86_64-pc-linux-gnu/main.o -c main.c
: && gcc -L/usr/lib/grass70/lib -L/usr/lib/grass70/lib -Wl,--export-dynamic -
Wl,-rpath-link,/usr/lib/grass70/lib  -o 
/tmp/tmpPv5j8I/r.grow.shrink/bin/r.grow.shrink OBJ.x86_64-pc-linux-gnu/main.o    
-lgrass_gis.7.0.0svn -lgrass_raster.7.0.0svn  -lm 
if [ "/tmp/tmpPv5j8I/r.grow.shrink/bin/r.grow.shrink" != "" ] ; then 
GISRC=/tmp/grass7-rnuske-27453/gisrc GISBASE=/usr/lib/grass70 
PATH="/usr/lib/grass70/bin:/usr/lib/grass70/bin:/usr/lib/grass70/scripts:
$PATH" PYTHONPATH="/usr/lib/grass70/etc/python:/usr/lib/grass70/gui/wxpython:
$PYTHONPATH" 
LD_LIBRARY_PATH="/tmp/tmpPv5j8I/r.grow.shrink/bin:/usr/lib/grass70/scripts:/usr/lib/grass70/lib:/usr/lib/grass70/lib:/usr/lib/grass70/lib" 
LC_ALL=C /tmp/tmpPv5j8I/r.grow.shrink/bin/r.grow.shrink --html-description < 
/dev/null | grep -v '</body>\|</html>' > r.grow.shrink.tmp.html ; fi
VERSION_NUMBER=7.0.0svn VERSION_DATE=2015 \
        python /usr/lib/grass70/tools/mkhtml.py r.grow.shrink > 
/tmp/tmpPv5j8I/r.grow.shrink/docs/html/r.grow.shrink.html
VERSION_NUMBER=7.0.0svn /usr/lib/grass70/tools/g.html2man.py 
/tmp/tmpPv5j8I/r.grow.shrink/docs/html/r.grow.shrink.html 
/tmp/tmpPv5j8I/r.grow.shrink/docs/man/man1/r.grow.shrink.1
/bin/sh: 1: /usr/lib/grass70/tools/g.html2man.py: not found
make: *** [/tmp/tmpPv5j8I/r.grow.shrink/docs/man/man1/r.grow.shrink.1] Error 
127
rm r.grow.shrink.tmp.html
ERROR: Compilation failed, sorry. Please check above error messages.



2. Test as Standard User after symlink (ln -s g.html2man g.html2man.py)
================================================================
GRASS 7.0.0 (test_location):~ > g.extension extension=r.grow.shrink --verbose
Fetching <r.grow.shrink> from GRASS-Addons SVN repository (be patient)...
A    r.grow.shrink/DEPRECATED
A    r.grow.shrink/main.c
A    r.grow.shrink/Makefile
A    r.grow.shrink/r.grow.shrink.html
 U   r.grow.shrink
Checked out revision 64604.
Compiling...
mkdir -p /tmp/tmpRVkTQj/r.grow.shrink/bin
mkdir -p /tmp/tmpRVkTQj/r.grow.shrink/etc
mkdir -p /tmp/tmpRVkTQj/r.grow.shrink/docs/html
mkdir -p /tmp/tmpRVkTQj/r.grow.shrink/docs/man
mkdir -p /tmp/tmpRVkTQj/r.grow.shrink/docs/man/man1
test -d OBJ.x86_64-pc-linux-gnu || mkdir -p OBJ.x86_64-pc-linux-gnu
gcc  -Wall -g -O   -I/usr/lib/grass70/include -I/usr/lib/grass70/include    -
DPACKAGE=\""grassmods"\"   -I/usr/lib/grass70/include -
I/usr/lib/grass70/include -DRELDIR=\"/tmp/tmpRVkTQj/r.grow.shrink\" -o 
OBJ.x86_64-pc-linux-gnu/main.o -c main.c
: && gcc -L/usr/lib/grass70/lib -L/usr/lib/grass70/lib -Wl,--export-dynamic -
Wl,-rpath-link,/usr/lib/grass70/lib  -o 
/tmp/tmpRVkTQj/r.grow.shrink/bin/r.grow.shrink OBJ.x86_64-pc-linux-gnu/main.o    
-lgrass_gis.7.0.0svn -lgrass_raster.7.0.0svn  -lm 
if [ "/tmp/tmpRVkTQj/r.grow.shrink/bin/r.grow.shrink" != "" ] ; then 
GISRC=/tmp/grass7-rnuske-27604/gisrc GISBASE=/usr/lib/grass70 
PATH="/usr/lib/grass70/bin:/usr/lib/grass70/bin:/usr/lib/grass70/scripts:
$PATH" PYTHONPATH="/usr/lib/grass70/etc/python:/usr/lib/grass70/gui/wxpython:
$PYTHONPATH" 
LD_LIBRARY_PATH="/tmp/tmpRVkTQj/r.grow.shrink/bin:/usr/lib/grass70/scripts:/usr/lib/grass70/lib:/usr/lib/grass70/lib:/usr/lib/grass70/lib" 
LC_ALL=C /tmp/tmpRVkTQj/r.grow.shrink/bin/r.grow.shrink --html-description < 
/dev/null | grep -v '</body>\|</html>' > r.grow.shrink.tmp.html ; fi
VERSION_NUMBER=7.0.0svn VERSION_DATE=2015 \
        python /usr/lib/grass70/tools/mkhtml.py r.grow.shrink > 
/tmp/tmpRVkTQj/r.grow.shrink/docs/html/r.grow.shrink.html
VERSION_NUMBER=7.0.0svn /usr/lib/grass70/tools/g.html2man.py 
/tmp/tmpRVkTQj/r.grow.shrink/docs/html/r.grow.shrink.html 
/tmp/tmpRVkTQj/r.grow.shrink/docs/man/man1/r.grow.shrink.1
Traceback (most recent call last):
  File "/usr/lib/grass70/tools/g.html2man.py", line 4, in <module>
    from html import HTMLParser, HTMLParseError
ImportError: No module named html
make: *** [/tmp/tmpRVkTQj/r.grow.shrink/docs/man/man1/r.grow.shrink.1] Error 1
rm r.grow.shrink.tmp.html
ERROR: Compilation failed, sorry. Please check above error messages.



> > VERSION_NUMBER=7.0.0svn /usr/lib/grass70/tools/g.html2man.py
> > /tmp/tmptZNptI/r.grow.shrink/docs/html/r.grow.shrink.html
> > /tmp/tmptZNptI/r.grow.shrink/docs/man/man1/r.grow.shrink.1
> > /bin/sh: 1: /usr/lib/grass70/tools/g.html2man.py: not found
> > make: *** [/tmp/tmptZNptI/r.grow.shrink/docs/man/man1/r.grow.shrink.1]
> > Error 127
> 
> Right, `/usr/lib/grass70/tools/` contains `g.html2man`. This is
> probably related to the packaging, my local sample installation (make
> install from source code) contains `g.html2man.py` in the `tools`
> directory.



More information about the grass-user mailing list