Instalação para Ubuntu
Essa instalação é incompleta e não torna funcional todos os módulos do carmen, principalmente os que utilizam recursos relacionado a câmera
Testado na versão 10.10 e 11.04. A versão 11.10 trás grandes mudanças e essa instalação não é mais compatível.
Índice
Preparação para a instalação do Carmen
Instale as bibliotecas abaixo, com os seguintes comandos:
sudo apt-get install swig sudo apt-get install libgdk2.0-dev sudo apt-get install qt-sdk sudo apt-get install libqt3-mt libqt3-mt-dev qt3-dev-tools sudo apt-get install libimlib2 libimlib2-dev sudo apt-get install imagemagick libmagick++-dev sudo apt-get install libwrap0 libwrap0-dev tcpd sudo apt-get install openjdk-6-jdk sudo apt-get install libncurses5 libncurses5-dev sudo apt-get install libgsl0-dev libgsl0ldbl sudo apt-get install libdc1394-22 libdc1394-22-dev libdc1394-utils sudo apt-get install cmake sudo apt-get install libgtkglext1 libgtkglext1-dev sudo apt-get install libgtkglextmm-x11-1.2-0 libgtkglextmm-x11-1.2-dev sudo apt-get install libglade2-0 libglade2-dev sudo apt-get install freeglut3 freeglut3-dev sudo apt-get install libcurl3 libcurl3-nss sudo apt-get install libglew1.5 libglew1.5-dev libglewmx1.5 libglewmx1.5-dev glew-utils1.5 sudo apt-get install libkml0 libkml-dev sudo apt-get install liburiparser1 liburiparser-dev sudo apt-get install git sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev libusb-dev sudo apt-get install libxi-dev libxi6 sudo apt-get install libxmu-dev libxmu6 sudo apt-get install build-essential libforms-dev sudo apt-get install byacc sudo apt-get install flex
Instale os pacotes da imlib herdados do Fedora, esses pacotes não existem nos repositórios do Ubuntu!! (eles se encontram em carmen/ubuntu_packages):
dpkg -i imlib_1.9.15-20_amd64.deb dpkg -i imlib-devel_1.9.15-20_amd64.deb
Faça os seguintes links:
ln -s /usr/lib64/libgdk_imlib.so.1.9.15 /usr/lib64/libgdk_imlib.a ln -s /usr/src/linux-headers-2.6.38-13/ /usr/src/linux
Instale o driver kvaser (Baixe-o aqui)
mkdir /usr/local/Kvaser mv linuxcan_beta.tar.gz /usr/local/Kvaser/ cd /usr/local/Kvaser/ tar xvzf linuxcan_beta.tar.gz cd linuxcan_v4/ make make install
Instale o OpenCV na versão 2.2 (Baixe-o aqui) (obs: ubuntu 12.04 instale o 2.4 com esse tutorial http://www.samontab.com/web/2012/06/installing-opencv-2-4-1-ubuntu-12-04-lts/)
Copie-o e descompacte-o para uma pasta, (OPENCV_HOME de preferência). Para instalar execute os seguintes comandos de dentro da pasta descompactada que você baixou:
mkdir build cd build cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON .. make make install (como root)
Instale a Bullet Phisycs na Versão 2.78 (http://code.google.com/p/bullet/downloads/detail?name=bullet-2.78-r2387.tgz&can=2&q=)
mkdir /usr/local/bullet mv bullet-2.78-r2387.tgz /usr/local/bullet/ cd /usr/local/bullet/ tar xzvf bullet-2.78-r2387.tgz $ ./configure $ make # make install (como root)
Instalação do carmen
Crie o diretório roboticaprobabilistica/code/ em sua home:
$ mkdir ~/roboticaprobabilistica/ $ mkdir ~/roboticaprobabilistica/code/
Execute um checkout de http://www.lcad.inf.ufes.br/svn/roboticaprobabilistica/code/carmen na pasta ~/roboticaprobabilistica/code/
$ cd ~/roboticaprobabilistica/code/ $ svn co http://www.lcad.inf.ufes.br/svn/roboticaprobabilistica/code/carmen
Instale e configure a câmera Kinect no linux. Siga as instruções em Configurando o Pioneer 3DX no CARMEN
Instale e configure o gmapping. Siga as instruções em Como Instalar e Usar o Gmapping
Colocar no arquivo .bashrc do usuario:
#CARMEN export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-amd64 export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/lib/x86_64-linux-gnu:/usr/lib/i386-linux-gnu/:/usr/lib/libkml export CARMEN_HOME=~/roboticaprobabilistica/code/carmen
Depois dos passos acima, no diretorio src de carmen:
./configure --nocuda --nojava Should the C++ tools be installed for CARMEN: [Y/n] Y Should Python Bindings be installed: [y/N] y Searching for Python2.4... Should the old laser server be used instead of the new one: [y/N] N Install path [/usr/local/]: Robot numbers [*]: 1,2
Caso você queira usar versões mais novas do IPC do que as que acompanham o Carmen, baixe de: http://www.cs.cmu.edu/afs/cs/project/TCA/www/ipc/index.html
Para instalar uma nova versão do IPC, logue como root e copie o .tar.gz para /usr/local e instale:
cd /usr/local tar xzvf ipc-3.9.0.tar.gz cd ipc-3.9.0 gmake install /* este comando pode gerar mas ainda assim estar tudo OK, ver abaixo */ ln -s ipc-3.9.0 ipc
Para saber se está tudo OK, verifique se a instalação produziu o central e libipc.a:
ls /usr/local/ipc/bin/Linux-2.6/ ls /usr/local/ipc/lib/Linux-2.6/
Finalmente, para configurar Carmen com um IPC novo, use o comando configure:
./configure --nocuda --nojava --ipc=/usr/local/ipc
Para compilar o carmen rode:
make
Instalação do carmen
Crie o diretório roboticaprobabilistica/code/ em sua home:
mkdir ~/roboticaprobabilistica/ mkdir ~/roboticaprobabilistica/code/
Execute um checkout de http://www.lcad.inf.ufes.br/svn/roboticaprobabilistica/code/carmen na pasta ~/roboticaprobabilistica/code/
cd ~/roboticaprobabilistica/code/ svn co http://www.lcad.inf.ufes.br/svn/roboticaprobabilistica/code/carmen
Depois dos passos acima, no diretorio src de carmen:
./configure --nocuda --nojava Should the C++ tools be installed for CARMEN: [Y/n] Y Should Python Bindings be installed: [y/N] y Searching for Python2.4... Should the old laser server be used instead of the new one: [y/N] N Install path [/usr/local/]: Robot numbers [*]: 1,2
Caso você queira usar versões mais novas do IPC do que as que acompanham o Carmen, baixe de: http://www.cs.cmu.edu/afs/cs/project/TCA/www/ipc/index.html
Para instalar uma nova versão do IPC, logue como root e copie o .tar.gz para /usr/local e instale:
cd /usr/local tar xzvf ipc-3.9.0.tar.gz cd ipc-3.9.0 gmake install /* este comando pode gerar mas ainda assim estar tudo OK, ver abaixo */ ln -s ipc-3.9.0 ipc
Para saber se está tudo OK, verifique se a instalação produziu o central e libipc.a:
ls /usr/local/ipc/bin/Linux-2.6/ ls /usr/local/ipc/lib/Linux-2.6/
Finalmente, para configurar Carmen com um IPC novo, use o comando configure:
./configure --nocuda --nojava --ipc=/usr/local/ipc
Para compilar:
make
Observações extras
Caso ocorra erro em global relacionado ao QT, abra o arquivo carmen/src/global/Makefile e troque
IFLAGS += -I/usr/lib64/qt4/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include -I/home/lauro/robotics/code/carmen/include
por
IFLAGS += -I/usr/lib64/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore/ -I/usr/include/qt4/QtGui -I/usr/include -I/usr/include/qt4/ -I$CARMEN_HOME/include
Em carmen/src/proccontrol/Makefile, acrescente a seguinte linha no inicio do arquivo:
IFLAGS += -I/usr/include/qt4/ -I/usr/include -I/usr/include/qt3/ -I/usr/include/qt4/Qt3Support/
Em carmen/src/camera/quickcam/quickcam.c troque
#include <linux/videodev.h>
por
#include <libv4l1-videodev.h>
Atualmente em 01/12/2011 os seguintes pacotes não são totalmente compilados por esse tutorial:
proccontrol kinect bumblebee_basic mvog_package logger fused_odometry viewer_3D stereo v_disparity road_finding visual_odometry_package
portanto, é necessário os retirar de carmen/src/Makefile ou então utilizar make -i para compilar.