beOpen
 

ShapeLib, almeno in debian/ubuntu è facilmente installabile con apt ma non tutte le sue utilissime utility vengono istallate di default e il motivo forse dipende dal fatto che sono software /contrib.

Questi sono i pacchetti che si perderebbero senza fare attenzione a cosa c’è nel codice sorgente:
dbfcat, dbfinfo, shpcat, shpcentrd, shpdata, shpdxf, shpfix, shpinfo, shpproj e shpwkb

Potete già intuirne l’utilità per lo sviluppo GIS.

Qui il download del sorgente di ShapeLib

mkdir ~/SORGENTI
cd SORGENTI
wget http://dl.maptools.org/dl/shapelib/shapelib-1.2.10.tar.gz
tar zxvf shapelib-1.2.10.tar.gz
cd shapelib-1.2.10/

ShapeLib non ha un file configure ma esiste un Makefile che provvede a tutto per cui

make all 2>&1 | tee make_all.log 

e poi ancora

make lib 2>&1 | tee make_lib.log 

per ottenere il file lib libshp.so
Alla fine vi troverete pronti i pacchetti: dbfadd, dbfcreate, dbfdump, shpadd, shpcreate, shpdump, shprewind e libshp.so .
Ma fin qui avete ottenuto lo stesso che con apt-get install shapelib

Ora per i pacchetti contrib:

cd contrib/
make all 2>&1 | tee make.log

la compilazione vi darà un errore “at the line number 546 of shpgeo.c file”.
Modificate la linea 546 del file shpgeo.c, in questo modo:
»» (SHPObject*) ppsC[cParts] = SHPUnCompound ( psCShape, &nextring );
da rimpiazzare con:
«« ppsC[cParts] = SHPUnCompound ( psCShape, &nextring );
e ancora:

make clean
make all 2>&1 | tee make.log

e ora copiate tutto al suo posto:

cp -v dbfadd dbfcreate dbfdump shpadd shpcreate shpdump shprewind /usr/local/bin

ma forse quello sopra lo avete già nel sistema col pacchetto debian

cp -v contrib/dbfcat contrib/dbfinfo contrib/shpcat contrib/shpcentrd contrib/shpdata contrib/shpdxf contrib/shpfix contrib/shpinfo contrib/shpproj contrib/shpwkb /usr/local/bin

questo è tutto e le nuove utility sono d’avvero utilissime

 
gis/shapelib.txt · Ultima modifica: 03/02/2007 20:50 da luca
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki