[GRASS-user] installing addon problem for regular users (ubuntu newbies)

M S mseibel at gmail.com
Thu Nov 12 11:00:35 EST 2009


Thanks Glynn. I failed to mention the GRASS 6.4RC5 is from UbuntuGIS
with binaries and grass-dev package installed.

It seemed to have worked (?) with errors, or I've been mucking around
too much and missed some detail from prior trial.  Seems to have
error'd while making the manpages.  I can launch r.stream.extract, and
it runs the module. (Nice!).  Here is the input/output (should long
outputs like this go to pastebin or the like?):

$ sudo make MODULE_TOPDIR=/usr/lib/grass64 ARCH_DISTDIR=/usr/lib/grass64
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/close.o -c close.c

close.c: In function ‘close_streamvect’:
close.c:33: warning: format not a string literal and no format arguments
close.c:155: warning: format not a string literal and no format arguments
close.c:187: warning: format not a string literal and no format arguments
close.c:213: warning: format not a string literal and no format arguments
close.c:221: warning: format not a string literal and no format arguments
close.c: In function ‘close_maps’:
close.c:245: warning: format not a string literal and no format arguments
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/del_streams.o -c del_streams.c
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/do_astar.o -c do_astar.c
do_astar.c: In function ‘do_astar’:
do_astar.c:33: warning: format not a string literal and no format
arguments
do_astar.c: In function ‘heap_add’:
do_astar.c:154: warning: format not a string literal and no format
arguments
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/flag_clr_all.o -c flag_clr_all.c
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/flag_create.o -c flag_create.c
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/flag_destroy.o -c flag_destroy.c
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/flag_get.o -c flag_get.c
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/flag_set.o -c flag_set.c
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/flag_unset.o -c flag_unset.c
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/load.o -c load.c
load.c: In function ‘load_maps’:
load.c:44: warning: format not a string literal and no format
arguments
load.c:46: warning: format not a string literal and no format
arguments
load.c:56: warning: format not a string literal and no format
arguments
load.c:65: warning: format not a string literal and no format
arguments
load.c:75: warning: format not a string literal and no format
arguments
load.c:217: warning: format not a string literal and no format
arguments
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/main.o -c main.c
main.c: In function ‘main’:
main.c:195: warning: format not a string literal and no format
arguments
main.c:246: warning: format not a string literal and no format
arguments
main.c:254: warning: format not a string literal and no format
arguments
main.c:259: warning: format not a string literal and no format
arguments
main.c:267: warning: format not a string literal and no format
arguments
main.c:276: warning: format not a string literal and no format
arguments
main.c:281: warning: format not a string literal and no format
arguments
main.c:287: warning: format not a string literal and no format
arguments
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/rbtree.o -c rbtree.c
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/streams.o -c streams.c
streams.c: In function ‘do_accum’:
streams.c:234: warning: format not a string literal and no format
arguments
streams.c: In function ‘extract_streams’:
streams.c:460: warning: format not a string literal and no format
arguments
gcc -I/usr/lib/grass64/include  -Wall -g -O    -I/usr/include/gdal
-DPACKAGE=\""grassmods"\"  -I/usr/lib/grass64/include -o
OBJ.i486-pc-linux-gnu/thin.o -c thin.c
thin.c: In function ‘thin_streams’:
thin.c:92: warning: format not a string literal and no format
arguments
gcc -L/usr/lib/grass64/lib -Wl,-Bsymbolic-functions
-Wl,--export-dynamic -Wl,-rpath-link,/usr/lib/grass64/lib    -o
/usr/lib/grass64/bin/r.stream.extract OBJ.i486-pc-linux-gnu/close.o
OBJ.i486-pc-linux-gnu/del_streams.o OBJ.i486-pc-linux-gnu/do_astar.o
OBJ.i486-pc-linux-gnu/flag_clr_all.o
OBJ.i486-pc-linux-gnu/flag_create.o
OBJ.i486-pc-linux-gnu/flag_destroy.o OBJ.i486-pc-linux-gnu/flag_get.o
OBJ.i486-pc-linux-gnu/flag_set.o OBJ.i486-pc-linux-gnu/flag_unset.o
OBJ.i486-pc-linux-gnu/load.o OBJ.i486-pc-linux-gnu/main.o
OBJ.i486-pc-linux-gnu/rbtree.o OBJ.i486-pc-linux-gnu/streams.o
OBJ.i486-pc-linux-gnu/thin.o  -lgrass_vect -lgrass_dbmibase
-lgrass_gis -lgrass_datetime -lz      -lgrass_dbmiclient
-lgrass_dbmibase -lgrass_gis -lgrass_datetime -lz      -lgrass_gis
-lgrass_datetime -lz      -lgrass_dgl -lgrass_dig2 -lgrass_gis
-lgrass_datetime -lz     -lgrass_rtree  -lgrass_gis -lgrass_datetime
-lz     -lgrass_linkm -lgrass_rtree  -lgrass_dig2 -lgrass_gis
-lgrass_datetime -lz     -lgrass_rtree  -lgrass_dgl -lgrass_rtree
-lgrass_linkm -lgrass_dbmiclient -lgrass_dbmibase -lgrass_gis
-lgrass_datetime -lz      -lgrass_gis -lgrass_datetime -lz
-lgrass_dbmibase -lgrass_gis -lgrass_datetime -lz       -L/usr/lib
-lgdal1.6.0 -lgrass_dbmiclient -lgrass_dbmibase -lgrass_gis
-lgrass_datetime -lz      -lgrass_gis -lgrass_datetime -lz
-lgrass_dbmibase -lgrass_gis -lgrass_datetime -lz       -lgrass_gis
-lgrass_datetime -lz     -lm  -lz
make htmlcmd
make[1]: Entering directory
`/usr/lib/grass64/grass-addons/raster/r.stream.extract'
make /usr/lib/grass64/docs/html/r.stream.extract.html
HTMLSRC=/usr/lib/grass64/bin/r.stream.extract
make[2]: Entering directory
`/usr/lib/grass64/grass-addons/raster/r.stream.extract'
if [ "/usr/lib/grass64/bin/r.stream.extract" != "" ] ; then
GISRC=/usr/lib/grass64/demolocation/.grassrc64
GISBASE=/build/buildd/grass-6.4.0~rc5/dist.i486-pc-linux-gnu
PATH="/usr/lib/grass64/bin:$PATH"
LD_LIBRARY_PATH="/usr/lib/grass64/bin:/usr/lib/grass64/lib:" LC_ALL=C
fakeroot /usr/lib/grass64/bin/r.stream.extract --html-description <
/dev/null | grep -v '</body>\|</html>' > r.stream.extract.tmp.html ;
true ; fi
ERROR: G_getenv(): Variable LOCATION_NAME not set
/usr/lib/grass64/tools/mkhtml.sh r.stream.extract ; mkdir -p
/usr/lib/grass64/docs/html ; /usr/bin/install -c  -m 644
r.stream.extract.tmp.html
/usr/lib/grass64/docs/html/r.stream.extract.html ; for file in  *.png
*.jpg ; do head -n 1 $file | grep '^#!' > /dev/null ; if [ $? -ne 0 ]
; then /usr/bin/install -c  -m 644 $file /usr/lib/grass64/docs/html ;
fi done 2> /dev/null ; true
/bin/sh: /usr/lib/grass64/tools/mkhtml.sh: not found
make[2]: Leaving directory
`/usr/lib/grass64/grass-addons/raster/r.stream.extract'
make[1]: Leaving directory
`/usr/lib/grass64/grass-addons/raster/r.stream.extract'
make mancmd
make[1]: Entering directory
`/usr/lib/grass64/grass-addons/raster/r.stream.extract'
make /usr/lib/grass64/man/man1/r.stream.extract.1
MANSRC=/usr/lib/grass64/docs/html/r.stream.extract.html
make[2]: Entering directory
`/usr/lib/grass64/grass-addons/raster/r.stream.extract'
mkdir -p /usr/lib/grass64/man/man1
GRASS_PERL=/usr/bin/perl VERSION_NUMBER=6.4.0RC5 sh
/build/buildd/grass-6.4.0~rc5/tools/g.html2man/g.html2man
/usr/lib/grass64/docs/html/r.stream.extract.html
/usr/lib/grass64/man/man1/r.stream.extract.1 1
sh: Can't open /build/buildd/grass-6.4.0~rc5/tools/g.html2man/g.html2man
make[2]: *** [/usr/lib/grass64/man/man1/r.stream.extract.1] Error 2
make[2]: Leaving directory
`/usr/lib/grass64/grass-addons/raster/r.stream.extract'
make[1]: *** [mancmd] Error 2
make[1]: Leaving directory
`/usr/lib/grass64/grass-addons/raster/r.stream.extract'
make: *** [cmd] Error 2


On Thu, Nov 12, 2009 at 10:32 AM, Glynn Clements
<glynn at gclements.plus.com> wrote:
>
> M S wrote:
>
>> I'm on Kubuntu 9.10, using both 32 and 64 bit systems.  This output is
>> from 32bit.  It is GRASS 6.4 RC5.  Seems to be the same logged issue
>> of defaulting to /build rather than /var/lib/grass64
>>
>> -------------------------
>> I ran "sudo make MODULE_TOPDIR=/usr/lib/grass64"
>>
>> This is the first line of output"  gcc
>> -I/build/buildd/grass-6.4.0~rc5/dist.i486-pc-linux-gnu/include  -Wall
>> -g -O    -I/usr/include/gdal    -DPACKAGE=\""grassmods"\"
>> -I/build/buildd/grass-6.4.0~rc5/dist.i486-pc-linux-gnu/include -o
>> OBJ.i486-pc-linux-gnu/close.o -c close.c  "
>> ---------------------------
>>
>> If I apply the GRASS_HOME=/usr/lib/grass64:
>>
>> --------------------------
>> $ sudo make MODULE_TOPDIR=/usr/lib/grass64 GRASS_HOME=/usr/lib/grass64
>>
>> gcc -I/usr/lib/grass64/dist.i486-pc-linux-gnu/include  -Wall -g -O
>> -I/usr/include/gdal    -DPACKAGE=\""grassmods"\"
>> -I/usr/lib/grass64/dist.i486-pc-linux-gnu/include -o
>> OBJ.i486-pc-linux-gnu/close.o -c close.c
>> close.c:1:23: error: grass/gis.h: No such file or  directory
>> close.c:2:27: error: grass/glocale.h: No such file or directory
>> close.c:3:24: error: grass/dbmi.h: No such file or directory
>> close.c:4:24: error: grass/Vect.h: No such file or directory
>> -------------------------
>>
>> Should it be looking in /usr/lib/grass64/include, instead of
>> /usr/lib/grass64/dist.i486-pc-linux-gnu/include ?   The latter
>> directory is empty.
>>
>> If so, how do I remove the "dist.i486-pc-linux--gnu" portion from the
>> gcc statement?
>
> You could try ARCH_DISTDIR=/usr/lib/grass64, but this may not be
> sufficient for complex cases. If you need to search both the installed
> version and the build directory for headers and/or libraries, you will
> need to set ARCH_INC and/or ARCH_LIBPATH explicitly.
>
> If you still have problems, look at the first two sections of
> Grass.make; this defines the most important variables.
>
> 6.x is still a bit of a mess in this regard.
>
> In 7.0, ARCH_DISTDIR controls where output files go, while GISBASE
> controls where existing libraries and headers are found. Both
> $(ARCH_DISTDIR)/include and $(GISBASE)/include are searched for
> headers, and both $(ARCH_DISTDIR)/lib and $(GISBASE)/lib are searched
> for libraries. This allows a package to use both existing headers and
> libraries and those which are part of the package.
>
> RUN_GISBASE is the value of GISBASE used when running GRASS modules as
> part of the build process (on Windows, this will be in Windows format
> rather than MSys format).
>
> MODULE_TOPDIR is only used to locate the *.make files; everything else
> uses the variables from those files.
>
> --
> Glynn Clements <glynn at gclements.plus.com>
>


More information about the grass-user mailing list