Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Programmazione/Mapnik"
Differenze tra le versioni 3 e 38 (in 35 versioni)
Versione 3 del 24/09/2008 09.43.07
Dimensione: 2649
Commento:
Versione 38 del 19/10/2008 11.11.51
Dimensione: 7575
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page was renamed from TommasoDiBucchianico/prove1
Linea 8: Linea 9:
Mapnik è un toolkit (insieme di strumenti) per la realizzazione di mappe a partire da dati vettoriali e raster. E' scritto in C++ e ha Python bindings che supportano uno sviluppo semplice e veloce delle mappe. Mapnik può essere usato sia per lo sviluppo di applicazioni web, accoppiato con altri softwar tipo Open Layer, sia per un uso desktop. Questa guida vuole essere una traduzione abbastanza fedele della [http://trac.mapnik.org/wiki/UbuntuInstallation/ guida all'istallazione di Mapnik su Ubuntu 8.04] presente nel sito ufficiale di Mapnik, arricchita con alcuni punti personali.
Linea 10: Linea 11:

'''Mapnik''' è un toolkit (insieme di strumenti) per la realizzazione di mappe a partire da dati vettoriali e raster ed è un'ottima alternativa ai più famosi [http://mapserver.gis.umn.edu/ Mapserver] e [http://geoserver.org/display/GEOS/Welcome Geoserver]. E' scritto in C++, permette un render molto veloce e utilizza Python bindings che supportano uno sviluppo semplice e veloce delle mappe. Grazie all'ottima [http://mapnik.org/documentation/ documentazione] e ai numerosi [http://trac.mapnik.org/wiki/ExampleCode esempi di codice] l'uso di Mapnik non è precluso a chi non ha conoscenze di programmazione. Mapnik viene usato normalmente per lo sviluppo di applicazioni web ma è adatto anche per la creazione di mappe a livello desktop.


Mapnik inoltre è il renderer "ufficiale" del progetto di cartografia libera [http://openstreetmap.org openstreetmap].
Linea 12: Linea 18:
Per Ubuntu 8.04 è presente nei repository Universe il pacchetto python-mapnik che contiene Mapnik 0.4 e può essere comodamente installato tramire apt-get. Per Ubuntu 8.04 è presente nei [http://wiki.ubuntu-it.org/Repository?highlight=%28repository%29 repository] Universe il pacchetto ''python-mapnik'' che contiene Mapnik 0.4 e può essere comodamente installato tramire apt-get.
Linea 21: Linea 27:
Innanzitutto vanno aggiornati i pacchetti già installati
{{{
aptitude update
aptitude upgrade
== Installazione dipendenze ==

 * Installazione delle dipendenze boost richieste tramite [:AmministrazioneSistema/Aptitude:Aptitude]:

  {{{
sudo aptitude install binutils cpp-3.3 g++-3.3 gcc-3.3 gcc-3.3-base libboost-dev libboost-filesystem-dev libboost-filesystem1.34.1 libboost-iostreams-dev libboost-iostreams1.34.1 libboost-program-options-dev libboost-program-options1.34.1 libboost-python-dev libboost-python1.34.1 libboost-regex-dev libboost-regex1.34.1 libboost-serialization-dev libboost-serialization1.34.1 libboost-thread-dev libboost-thread1.34.1 libicu-dev libicu38 libstdc++5 libstdc++5-3.3-dev python2.5-dev
Linea 27: Linea 35:
Installazione delle dipendenze richieste tramite [:AmministrazioneSistema/Aptitude:Aptitude]:

boost dipendenze:
{{{
aptitude install binutils cpp-3.3 g++-3.3 gcc-3.3 gcc-3.3-base libboost-dev libboost-filesystem-dev libboost-filesystem1.34.1 libboost-iostreams-dev libboost-iostreams1.34.1 libboost-program-options-dev libboost-program-options1.34.1 libboost-python-dev libboost-python1.34.1 libboost-regex-dev libboost-regex1.34.1 libboost-serialization-dev libboost-serialization1.34.1 libboost-thread-dev libboost-thread1.34.1 libicu-dev libicu38 libstdc++5 libstdc++5-3.3-dev python2.5-dev
}}}

Altre dipendenze richieste
{{{
 * Altre dipendenze richieste
  {{{
Linea 38: Linea 39:
Cairo Renderer dipendenze (opzionale)
{{{
sudo #aptitude install libcairo2 libcairo2-dev python-cairo python-cairo-dev libcairomm-1.0-1 libcairomm-1.0-dev libglib2.0-0 libpixman-1-0 libpixman-1-dev libpthread-stubs0 libpthread-stubs0-dev ttf-dejavu ttf-dejavu-core ttf-dejavu-extra
 * Opzionale: Cairo Renderer dipendenze
  {{{
sudo aptitude install libcairo2 libcairo2-dev python-cairo python-cairo-dev libcairomm-1.0-1 libcairomm-1.0-dev libglib2.0-0 libpixman-1-0 libpixman-1-dev libpthread-stubs0 libpthread-stubs0-dev ttf-dejavu ttf-dejavu-core ttf-dejavu-extra
Linea 42: Linea 43:
Installazione di altri strumenti GIS (opzionale. Vedi anche [:UbuntuGis:UbuntuGis]
{{{
 * Opzionale: Installazione di altri strumenti GIS (Vedi in proposito anche la guida [:UbuntuGis:UbuntuGis])
  {{{
Linea 47: Linea 48:
 0. Passo 1
 0. Passo 2
 0. Passo 3
Linea 51: Linea 49:
== Titolo 2 == == Compilazione e installazione ==
 * Se non si sono installate Postgis, Gdal e non si ha intenzione di usare Mapnik come server WMS è suffiente dare i seguenti comandi
  {{{
mkdir ~/src
cd ~/src
svn co svn://svn.mapnik.org/trunk mapnik
cd mapnik
python scons/scons.py
sudo python scons/scons.py install
}}}
 * Se invece si sono istallati Postgis, Gdal e si ha intenzione di usare il supporto WMS è necessario specificare il percorso alle librerie necessarie.
  {{{
python scons/scons.py DEBUG=y PGSQL_INCLUDES=/usr/include/postgresql/ PGSQL_LIBS=/usr/lib/postgresql/8.3/lib GDAL_INCLUDES=/usr/local/include GDAL_LIBS=/usr/local/lib XMLPARSER=libxml2
sudo python scons/scons.py install DEBUG=y PGSQL_INCLUDES=/usr/include/postgresql/ PGSQL_LIBS=/usr/lib/postgresql/8.3/lib GDAL_INCLUDES=/usr/local/include GDAL_LIBS=/usr/local/lib XMLPARSER=libxml2
}}}
||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''Se si dovesse ricevere in fase di compilazione un messaggio di errore relativo alla libreria m, è necessario disinstallare il pacchetto '' '''libcairomm-1.0-dev'''. ||
Linea 53: Linea 66:
= Mapnik =
Linea 55: Linea 67:
Testo...  * Infine dare i seguente comando
  {{{
sudo ldconfig
}}}
Linea 57: Linea 72:
 0. Passo 1
 0. Passo 2
 0. Passo 3
Linea 61: Linea 73:
== Titolo 2 == = Testare se l'installazione è andata a buon fine =
Aprire una console di python oppure dare nel terminale il comando
{{{
python
}}}
adesso all'interno di python dare il comando
{{{
import mapnik
}}}
Se non si riceve nessun output l'installazione dovrebbe essere andata bene e si può passare al [http://trac.mapnik.org/wiki/GettingStarted tutorial]
Linea 63: Linea 84:
Testo...
= Opzionale: Compilazione del Viewer =
Mapnik comprende un Viewer (visualizzatore) per la visualizzazione di mapfile di tipo xml. Il Viewer permette:
 * la visualizzazione on-the-fly dei tiles
 * di leggere nel terminale i correnti livelli di zoom e envelope
 * possibilità di zoomare tramite query
 * di leggere eventuali errori di configurazione della mappa
 * di esportare in diversi formati tra cui tif
||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/note.png,,center)]] ||<style="padding:0.5em; border:none;">''Il '''Viewer''' è non è presente nel pacchetto installabile da repository. Se si ha intenzione di usare il viewer è necessario installare '''Mapnik''' da sorgenti''||


== Compilazione e installazione ==
Il codice sorgente del Viewer è contenuto in una sotto cartella del sorgente di Mapnik e deve essere compilato a parte. Per la compilazione sono necessari Qt4 (compreso il pacchtto dev) e qmake.
 * Entrare della cartella che contiene il Viewer
{{{
cd ~/src/mapnik/dem/viewer
}}}
 * E' necessario adattare alcuni file al proprio sistema
   * Aprire il file `viewer.pro` con un qualsiasi [:Ufficio/EditorDiTesto:editor di testo] e modificarlo il percorso di INCLUDEPATH come segue
    {{{
INCLUDEPATH += /usr/local/include/mapnik
INCLUDEPATH += /usr/include/boost-1_34_1
INCLUDEPATH += /usr/include/freetype2
INCLUDEPATH += .
}}}
     * Modificare anche la riga unix.LIBS come segue
      {{{
unix:LIBS += -L/usr/local/lib -lmapnik
}}}
  * Aprire il file `main.cpp` con un qualsiasi [:Ufficio/EditorDiTesto:editor di testo] modificarlo specificando il percorso ai font a ai plugin di Mapnik come segue
    {{{
datasource_cache::instance()->register_datasources("/usr/local/lib/mapnik/input");
freetype_engine::register_font("/usr/local/lib/mapnik/fonts/DejaVuSans.ttf");
freetype_engine::register_font("/usr/local/lib/mapnik/fonts/DejaVuSans-Bold.ttf");
freetype_engine::register_font("/usr/local/lib/mapnik/fonts/DejaVuSansMono.ttf");
}}}
 * Compilare e installare il Viewer
{{{
/usr/bin/qmake-qt4 -makefile
make
}}}
== Lanciare il Viewer ==
 Restando nella stessa directory dare il seguente comando
{{{
./viewer
}}}
 * Per visualizzare un mapfile lanciare il viewer aggiungendo il percorso dello stesso
{{{
./viewer /percorso/mapfile.xml
}}}
Linea 67: Linea 137:
 * Risorsa 1
 * Risorsa 2
 * [http://trac.mapnik.org/ wiki di Mapnik]
 * [http://mike.teczno.com/notes/mapnik.html consigli stilistici]
 * [http://trac.mapnik.org/wiki/UbuntuInstallation/ documento originale]
 * [:UbuntuGis: guida all'installazione di altri strumenti GIS]
Linea 72: Linea 143:
CategoryNuoviDocumenti CategoryHomepage

BR Indice()

Introduzione

Questa guida vuole essere una traduzione abbastanza fedele della [http://trac.mapnik.org/wiki/UbuntuInstallation/ guida all'istallazione di Mapnik su Ubuntu 8.04] presente nel sito ufficiale di Mapnik, arricchita con alcuni punti personali.

Mapnik è un toolkit (insieme di strumenti) per la realizzazione di mappe a partire da dati vettoriali e raster ed è un'ottima alternativa ai più famosi [http://mapserver.gis.umn.edu/ Mapserver] e [http://geoserver.org/display/GEOS/Welcome Geoserver]. E' scritto in C++, permette un render molto veloce e utilizza Python bindings che supportano uno sviluppo semplice e veloce delle mappe. Grazie all'ottima [http://mapnik.org/documentation/ documentazione] e ai numerosi [http://trac.mapnik.org/wiki/ExampleCode esempi di codice] l'uso di Mapnik non è precluso a chi non ha conoscenze di programmazione. Mapnik viene usato normalmente per lo sviluppo di applicazioni web ma è adatto anche per la creazione di mappe a livello desktop.

Mapnik inoltre è il renderer "ufficiale" del progetto di cartografia libera [http://openstreetmap.org openstreetmap].

Installazione da Repository (Ubuntu 8.04)

Per Ubuntu 8.04 è presente nei [http://wiki.ubuntu-it.org/Repository?highlight=%28repository%29 repository] Universe il pacchetto python-mapnik che contiene Mapnik 0.4 e può essere comodamente installato tramire apt-get.

sudo apt-get install python-mapnik

Se si volesse installare l'ultima versione (Mapnik 0.5) bisognerà [:AmministrazioneSistema/InstallareProgrammi/DaSorgenti:compilare i sorgenti] (vedi sotto).

Installazione tramite sorgenti (Ubuntu 8.04)

Installazione dipendenze

  • Installazione delle dipendenze boost richieste tramite [:AmministrazioneSistema/Aptitude:Aptitude]:

    • sudo aptitude install binutils cpp-3.3 g++-3.3 gcc-3.3 gcc-3.3-base libboost-dev libboost-filesystem-dev libboost-filesystem1.34.1 libboost-iostreams-dev libboost-iostreams1.34.1 libboost-program-options-dev libboost-program-options1.34.1 libboost-python-dev libboost-python1.34.1 libboost-regex-dev libboost-regex1.34.1 libboost-serialization-dev libboost-serialization1.34.1 libboost-thread-dev libboost-thread1.34.1 libicu-dev libicu38 libstdc++5 libstdc++5-3.3-dev python2.5-dev 
  • Altre dipendenze richieste
    • sudo aptitude install libfreetype6 libfreetype6-dev libjpeg62 libjpeg62-dev libltdl3 libltdl3-dev libpng12-0 libpng12-dev libtiff4 libtiff4-dev libtiffxx0c2 python-imaging python-imaging-dbg proj 
  • Opzionale: Cairo Renderer dipendenze
    • sudo aptitude install libcairo2 libcairo2-dev python-cairo python-cairo-dev libcairomm-1.0-1 libcairomm-1.0-dev libglib2.0-0 libpixman-1-0 libpixman-1-dev libpthread-stubs0 libpthread-stubs0-dev ttf-dejavu ttf-dejavu-core ttf-dejavu-extra
  • Opzionale: Installazione di altri strumenti GIS (Vedi in proposito anche la guida [:UbuntuGis:UbuntuGis])

    • sudo aptitude install libgdal-dev python2.5-gdal postgresql-8.3-postgis postgresql-8.3 postgresql-server-dev-8.3 postgresql-contrib-8.3

Compilazione e installazione

  • Se non si sono installate Postgis, Gdal e non si ha intenzione di usare Mapnik come server WMS è suffiente dare i seguenti comandi
    • mkdir ~/src
      cd ~/src
      svn co svn://svn.mapnik.org/trunk mapnik
      cd mapnik
      python scons/scons.py
      sudo python scons/scons.py install
  • Se invece si sono istallati Postgis, Gdal e si ha intenzione di usare il supporto WMS è necessario specificare il percorso alle librerie necessarie.
    • python scons/scons.py DEBUG=y PGSQL_INCLUDES=/usr/include/postgresql/ PGSQL_LIBS=/usr/lib/postgresql/8.3/lib GDAL_INCLUDES=/usr/local/include GDAL_LIBS=/usr/local/lib XMLPARSER=libxml2
      sudo python scons/scons.py install DEBUG=y PGSQL_INCLUDES=/usr/include/postgresql/ PGSQL_LIBS=/usr/lib/postgresql/8.3/lib GDAL_INCLUDES=/usr/local/include GDAL_LIBS=/usr/local/lib XMLPARSER=libxml2

Immagine(Icone/Piccole/note.png,,center)

Se si dovesse ricevere in fase di compilazione un messaggio di errore relativo alla libreria m, è necessario disinstallare il pacchetto libcairomm-1.0-dev.

  • Infine dare i seguente comando
    • sudo ldconfig

Testare se l'installazione è andata a buon fine

Aprire una console di python oppure dare nel terminale il comando

python

adesso all'interno di python dare il comando

import mapnik

Se non si riceve nessun output l'installazione dovrebbe essere andata bene e si può passare al [http://trac.mapnik.org/wiki/GettingStarted tutorial]

Opzionale: Compilazione del Viewer

Mapnik comprende un Viewer (visualizzatore) per la visualizzazione di mapfile di tipo xml. Il Viewer permette:

  • la visualizzazione on-the-fly dei tiles
  • di leggere nel terminale i correnti livelli di zoom e envelope
  • possibilità di zoomare tramite query
  • di leggere eventuali errori di configurazione della mappa
  • di esportare in diversi formati tra cui tif

Immagine(Icone/Piccole/note.png,,center)

Il Viewer è non è presente nel pacchetto installabile da repository. Se si ha intenzione di usare il viewer è necessario installare Mapnik da sorgenti

Compilazione e installazione

Il codice sorgente del Viewer è contenuto in una sotto cartella del sorgente di Mapnik e deve essere compilato a parte. Per la compilazione sono necessari Qt4 (compreso il pacchtto dev) e qmake.

  • Entrare della cartella che contiene il Viewer

cd ~/src/mapnik/dem/viewer
  • E' necessario adattare alcuni file al proprio sistema
    • Aprire il file viewer.pro con un qualsiasi [:Ufficio/EditorDiTesto:editor di testo] e modificarlo il percorso di INCLUDEPATH come segue

      • INCLUDEPATH += /usr/local/include/mapnik
        INCLUDEPATH += /usr/include/boost-1_34_1
        INCLUDEPATH += /usr/include/freetype2
        INCLUDEPATH += .
        • Modificare anche la riga unix.LIBS come segue
          • unix:LIBS += -L/usr/local/lib -lmapnik
    • Aprire il file main.cpp con un qualsiasi [:Ufficio/EditorDiTesto:editor di testo] modificarlo specificando il percorso ai font a ai plugin di Mapnik come segue

      • datasource_cache::instance()->register_datasources("/usr/local/lib/mapnik/input"); 
        freetype_engine::register_font("/usr/local/lib/mapnik/fonts/DejaVuSans.ttf");
        freetype_engine::register_font("/usr/local/lib/mapnik/fonts/DejaVuSans-Bold.ttf");
        freetype_engine::register_font("/usr/local/lib/mapnik/fonts/DejaVuSansMono.ttf");
  • Compilare e installare il Viewer

/usr/bin/qmake-qt4 -makefile
make

Lanciare il Viewer

  • Restando nella stessa directory dare il seguente comando

./viewer
  • Per visualizzare un mapfile lanciare il viewer aggiungendo il percorso dello stesso

./viewer /percorso/mapfile.xml

Ulteriori risorse


CategoryHomepage