-

hey viewer, we're moving!

We are currently transitioning to a new web system, so we are not updating this wikisite anymore.

The public part of the new web system is available at http://www.ira.disco.unimib.it


Compile DAFNE

From Irawiki

Jump to: navigation, search

Contents

Introduzione

Verranno ora presentati i passi per l'installazione delle librerie necessarie per compilare il software. L'installazione è stata eseguita su Linux Ubuntu 11.04 Natty ed il software DAFNE è stato reperito attraverso server cvs.

E' da notare che la presente guida fa riferimenti alla combilazione del file main di default presente nella sottocartella Example di DAFNE. Nella medesima cartella sono presenti altri file main che forniscono degli esempi per le varie funzionalità presenti nel framework. E' possibile dunque che, a seconda delle funzionalità che si vogliono utilizzare, non sia necessario svolgere tutti i passi seguenti, ma solo una sottoparte.

Installazione delle librerie

Seguono gli screenshot degli errori di compilazione ottenuti lanciando la compulazione (attraverso comando make dalla directory principale di DAFNE) e le procedure per risolverli.

OpenCV Library

OpenCV (Open Source Computer Vision Library) è una libreria che fornisce una serie di funzionalità orientate a tecniche di computer vision real time.

File:error1.jpg

Si fa riferimento alla guida "Installation Of OpenCV 2.1 on Ubuntu"

http://opencv.willowgarage.com/wiki/Ubuntu_Packages

Per installare OpenCV 2.1 su Ubuntu eseguire i seguenti comandi:

 $ sudo add-apt-repository ppa:gijzelaar/opencv2
 $ sudo apt-get update
 $ sudo apt-get install opencv

Per installare i development files eseguire:

 $ sudo apt-get install libopencv-dev

Se si vuole installare il Python module eseguire:

 $ sudo apt-get install python-opencv

Se si vuole eseguire la documentazione eseguire:

 $ sudo apt-get install opencv-doc

Infine eseguire da terminale:

 $ sudo apt-get install libcv-dev
 $ sudo apt-get install libhighgui-dev
 $ sudo apt-get install libcvaux-dev

Atlas & CBlas Library

Le librerie forniscono funzionalità per operazioni matematiche e geometriche.

File:Errore10.png


Digitare a terminale:

 $ sudo apt-get install libatlas-base-dev
 $ sudo apt-get build-dep libatlas-base-dev
 $ sudo apt-get install libblas-dev
 $ sudo apt-get build-dep libblas-dev
 $ sudo apt-get install liblapack-dev
 $ sudo apt-get build-dep liblapack-dev

GNU Scientific Library

Le GNU Scientific Library (o GSL) sono librerie scritte in C per gestire funzionalità di calcolo numerico.

File:error2.jpg

Installare tramite Ubuntu Software Center la GNU Scientific Library versione development.

Eigen 2 lightweight C++ template library for linear algebra Library

Eigen 2 fornisce funzionalità ottimizzate per gestire calcoli vettoriali.

File:error3.jpg

Installare da Ubuntu Software Center Eigen 2.

Ora occorre indicare dove si trova Eigen, di solito se scaricato da Ubuntu Software Center, il path corretto è: /usr/include/eigen2.

E' possibile indicare il path ai file che usano la libreria tra i quali DMGL/src/Edge2D.h o semplicemente copiare la subdirectory installata in /usr/include/eigen2/Eigen nelle cartelle DMGL, DRL ed Examples del progetto DAFNE.

Octomap Library

L'Octomap library implementa l'approccio 3D occupancy grid mapping, fornendo apposite strutture dati ed algoritmi. Le mappe implementate sono basate su octree.

File:errore9.png

Scaricare la libreria da http://sourceforge.net/projects/octomap/files/octomap-1.0.tar.gz/download

Digitare a consolle:

 $ sudo apt-get install cmake doxygen libqt4-dev \libqt4-opengl-dev libqglviewer-qt4-dev

Poi spostarsi nella directory dove si è scaricato la libreria nella sottocartalla build(ad esempio cd /home/daniele/Scaricati/octomap/build) e da consolle digitare:

 $ cmake ..
 $ make
 $ sudo make install

CSparse Library

La libreria CSparse permette di gestire in modo ottimizzato operazioni su matrici sparse.

File:error4.jpg

Installare da Ubuntu Software Center Concise Sparse Matrix Library o scaricare la libreria dal sito http://www.cise.ufl.edu/research/sparse/SuiteSparse/

Creare una cartella denominata suitesparse nelle subdirectory di DAFNE denominate DMGL ed Examples ed in questa cartella copiare i files presenti nelle seguenti directory: (con SuiteSparse directory scaricata dal sito)

/SuiteSparse/CSparse/Include/ e in /SuiteSparse/CHOLMOD/Include/

ed il file:

/SuiteSparse/UFconfig/UFconfig.h

Anche in questo caso è possibile indicare il path della libreria, per fare ciò eseguire da terminale:

 $ sudo apt-get install libsuitesparse-dev

CanFestival Library

CanFestival fornisce una serie di funzionalità per creare nodi di tipo master o slave nodes su un PC o su un microconstrollore. Tale funzionalità è usata in DAFNE ad esempio nell'implementazione del CAN bus.

File:error5.jpg

I file della libreria sono scaricabili dal sito http://www.canfestival.org/download.

Per installare la libreria eseguire i seguenti comandi su terminale:

 $ sudo apt-get install mercurial
 $ hg clone http://dev.automforge.net/CanFestival-3

Spostarsi ora nella directory dove è installato CanFestival-3 (ad esempio cd home/daniele/Scrivania/workspace/TimeToImpact/CanFestival-3) e da consolle digitare:

 $ ./configure
 $ make
 $ sudo make install

Basler Pylon Library

La libreria fornisce funzioni per l'interfacciamento alle camere Basler. Se non si utilizzano queste periferiche è possibile non compilare tali librerie, eliminandone però l'inclusione dal file DAFNE.h presente nella cartella Example.

File:error6.jpg

Scaricare il driver dal sito http://www.baslerweb.com/beitraege/maildownload_formular_en_59126.html

Estrarre dal file .rar contenuto nella cartella scaricata la directory "pylon".

Copiare la cartella pylon contenuta nella sottodirectory pylon/include/ nelle cartelle DSL ed Examples contenute in DAFNE.

Copiare poi nelle cartelle DSL ed Examples tutto il contenuto della directory pylon/genicam/library/CPP/include/.

  • Linking delle librerie:

Spostarsi da linea di comando nella directory dove si è scaricato la libreria (ad esempio cd /home/daniele/Scaricati/pylon-2.3.3-1337-bininst) e da consolle digitare:

 $ sudo mkdir /opt/pylon
 $ sudo tar -C /opt/pylon -xzf pylon-bininst-32.tar.gz

L'istruzione scompatterà pylon in /opt/pylon.

Ora occorre esportare le variabili d'ambiente:

 $ export PYLON_ROOT=/opt/pylon/pylon
 $ export GENICAM_ROOT_V2_1=${PYLON_ROOT}/genicam
 $ export LD_LIBRARY_PATH=${PYLON_ROOT}/lib
 $ export LD_LIBRARY_PATH=${GENICAM_ROOT_V2_1}/bin/Linux32_i86
 $ sudo mkdir -p $HOME/genicam_xml_cache
 $ export GENICAM_CACHE_V2_1=$HOME/genicam_xml_cache

Ed infine occorre includere le librerie: (questi comandi possono variare se nei comandi precedenti si è scelto di installare le librerie in altri path)

 $ sudo ln -s /opt/pylon/pylon/lib/libpylonbase.so /usr/local/lib/
 $ sudo ln -s /opt/pylon/pylon/lib/libpylonutility.so /usr/local/lib/

Hokuyo Urg Library

La libreria fornisce funzioni per l'interfacciamento alle periferiche Hokuyo. Se non si utilizzano queste periferiche è possibile non compilare tali librerie, eliminandone però l'inclusione dal file DAFNE.h presente nella cartella Example.

File:error7.jpg

Scaricare il driver da http://www.hokuyo-aut.jp/02sensor/07scanner/download/urg_programs_en/urg-0.8.13.zip e copiare i files preseti nella cartella include/cpp nelle subdirectory DSL ed Examples.

E' possibile anche installare direttamente da Ubuntu Software Center la libreria digitando come query "urg" e scegliendo per l'installazione la "library to access Hokuyo URG/UTM laser range scanners".

Joystick Wrapper Library

La libreria fornisce funzioni per l'interfacciamento ad una periferica Joystick. Se non si utilizzano periferiche di questo tipo è possibile non compilare tali librerie, eliminandone però l'inclusione dal file DAFNE.h presente nella cartella Example.

File:error8.jpg

Scaricare il driver da: http://libjsw.sourcearchive.com/downloads/1.5.6/

Copiare tutti i file presenti nella subdirectory /include/ del file scaricato, tranne il file "string.h", nelle cartelle DSL ed Examples di DAFNE.

Spostarsi poi nella directory dove si è scaricato la libreria (ad esempio cd /home/daniele/Scaricati/libjsw-1.5.6/libjsw) e da consolle digitare:

 $ make
 $ sudo make install

XercesC Library

XercesC è un parser XML presente nelle versioni precedenti di Ubuntu, infatti per installarlo occorre, come mostrato di seguito, aggiungere apposite stringhe nel file sources.list.

File:Errore11.png

 $ sudo apt-get install libxerces-c-dev

Successivamente accedere (cliccandoci ed inserendo la password) al file /etc/apt/sources.list ed alla voce altro software aggiungere le seguenti stringhe:

  deb http://76.73.4.58/ubuntu/ hardy-updates main
  deb http://76.73.4.58/ubuntu/ hardy universe
  deb http://security.ubuntu.com/ubuntu hardy-security main
  deb http://security.ubuntu.com/ubuntu hardy-security universe

Chiudere e tornare ora su terminale e digitare:

 $ sudo apt-get update
 $ sudo apt-get install libxerces27-dev

Compilazione

A questo punto è possibile compilare DAFNE da terminale con il comando make dalla directory root di DAFNE. Terminata la compilazione verra creato nella sottocartella Example/bin un file denominto test che contiene il compilato.

Per eseguire l'applicativo spostarsi nella cartella dove si trova il file test e digiare a consolle il comando ./test

Personal tools