Instalar Grass e QGis no Ubuntu 9.10 (com ECW e MrSID)
OBSOLETE
Prefácio
Este guia é uma versão adaptada para a versão 9.10 (Karmic Koala) da distribuição Ubuntu do sistema Operativo Linux de um guia anterior para a versão 8.04 (Hardy Heron): Instalar Grass e Qgis em Ubuntu 8.04 (com ECW e MrSID). São actualizados alguns comandos e corrigidos pequenos pormenores.
Para a versão 9.10 do Ubuntu o software Sig Quantum Gis (QGis) continua ausente dos repositórios oficiais e portanto não pode ser instalado com o Package Manager a não ser que se usem repositórios terceiros.
- Para o procedimento de instalação de Qgis e Grass através repositórios poderá ser consultado o guia existente para versão 8.04 do Ubuntu: Instalar_Grass_e_Qgis_em_Ubuntu_8.04_através_repositorios.
Uma das características do QGis/Grass - quando presentes nos repositórios oficiais ou de terceiros- é a de não ter o suporte (através das livrarias GDAL, Geospatial Data Abstraction Library) para alguns formatos de uso comum, como - por exemplo - o formato ECW[1] (Enhanced Compression Wavelet) e MrSID[2] (MultiResolution Seamless Image Database); esta situação é devida às licenças não claras com as quais são distribuídas as livrarias ECW e MrSID, que de facto torna muito complicada uma possível inclusão livre em packages presentes nos repositórios de muitas distribuições Gnu/Linux.
As livrarias ECW e MrSID são de qualquer forma livremente descarregáveis dos sites da ER Mapper[3] e LizardTech[4] (responsáveis pela respectivas patentes e licenças de uso) e se aceitarmos e compreendermos as respectivas licenças, então será possível usá-las para obter instalações de QGis e de Grass com suporte, acrescentado para estes formatos. Este processo implica a compilação e instalação manual dos vários componentes: livrarias ECW, MrSID, GDAL e obviamente de Grass e Qgis.
Preparação
A instalação do conjunto de programas GDAL, GRASS e QGis é feita usando uma interface de linha de comandos (usualmente chamada de shell). No Ubuntu esta interface pode ser chamada pelos menus "Applications" -> "Accessories" -> "Terminal".
Este guia assume que todos os ficheiros de instalação são colocados num directório temporário - temp - na raiz da área do utilizador. Caso esse directório não exista poderá criá-lo da seguinte forma:
mkdir ~/temp
Para começar entre nesse directório:
cd ~/temp
Instalação das ferramentas necessárias à compilação do software
Para começar será necesário instalar alguns pacotes que permitiraão obter e compilar o código fonte das aplicações pretendidas: build-essential, g++ e também o software subversion.
Na shell o comando será:
sudo apt-get install build-essential g++ subversion
Instalação das livrarias ECW
Encontramos o código fonte no site da ER Mapper[5] na secção downloads (para o poder obter precisamos de efectuar um registo no mesmo site). Seguimos os links "products and downloads --> Image Compression SDK" e a seguir descarregamos o "Image Compression SDK Source Code 3.3".
Em alternativa, se não for possível o acesso ao site da ER Mapper, podemos retirar o ECW SDK neste link[6].
Descompactamos o arquivo dentro do directório ~/temp e entramos na pasta que acabámos de criar com o comando:
cd libecwj2-3.3
Configuramos os ficheiros para a compilação:
./configure
Compilamos o código fonte:
make
E como utilizador com permissões de administração instalamos as livrarias:
sudo make install
Voltamos ao nível superior
cd ..
Preparação das livrarias MrSID
Encontramos o código fonte no site da Lizardtech[7] na secção download (para o poder obter precisamos de efectuar um registo no mesmo site). Seguimos os links "download --> Developer SDKs" e a seguir aceitamos a "LizardTech Software License Agreement" ao carregar o botão "I agree" e finalmente descarregamos o "GeoExpress SDK for Linux (x86) - gcc 4.1 32-bit"
Descompactamos o arquivo dentro do directório ~/temp. As livrarias MrSID não precisam de uma instalação directa mas os ficheiros contidos nesta pasta serão necessários nas fases seguintes.
Instalação das livrarias GDAL
Descarregamos o código fonte com o programa subversion:
svn checkout https://svn.osgeo.org/gdal/trunk/gdal gdal
A seguir copiamos alguns ficheiros que estão na pasta do SDK MrSID para a pasta com o código fonte das livrarias GDAL
cp ~/temp/Geo_DSDK-7.0.0.2167/include/*.* ~/temp/gdal/frmts/mrsid/
Entramos na pasta que contém o código fonte:
cd gdal
Configuramos os ficheiros para compilação, nesta primeira fase *sem* o suporte para Grass, com suporte para MrSID e sem o suporte em leitura para o formato JP2MrSID (em caso contrário iremos ter um erro em fase de compilação) através do MrSID SDK. Lembramos de especificar a posição das livrarias MrSID usando o percurso *relativo* e não absoluto:
./configure --without-grass --with-mrsid=../Geo_DSDK-7.0.0.2167 --without-jp2mrsid
No fim da configuração deveremos obter, entre outras, as seguintes informações:
... GRASS support: no ... ... ... ECW support: yes MrSID support yes ...
Compilamos o código fonte:
make
E como utilizador com permissões de administração instalamos as livrarias:
sudo make install
Sem sair da pasta onde acabámos de compilar GDAL damos o comando
sudo ldconfig
A seguir podemos verificar a correcta instalação de GDAL e o correcto suporte para ECW e MrSID atraves dos seguintes comandos
gdalinfo --formats | grep 'ECW'
ou
gdalinfo --formats | grep 'SID'
Voltamos ao nível superior
cd ..
Instalação do GRASS
Preparamos a instalação do GRASS (e sucessivamente do QGis) com a instalação de um número considerável de livrarias e programas necessários para a compilação/instalação das duas applicações SIG Desktop.
A forma mais simples de instalar estes programas é executar um comando único através da shell, mais especificamente:
sudo apt-get install flex bison libreadline5-dev libncurses5-dev lesstif2-dev debhelper dpatch libtiff4-dev tcl8.4-dev tk8.4-dev fftw-dev xlibmesa-gl-dev libfreetype6-dev autoconf2.13 autotools-dev libgdal1-dev proj libjpeg62-dev libpng12-dev libpq-dev unixodbc-dev doxygen fakeroot cmake python-dev python-qt4-dev python-sip4 python2.5-dev sip4 libglew1.5-dev libxmu6 libqt4-dev libgsl0-dev swig pyqt4-dev-tools cmake-curses-gui
Agora podemos descarregar o código fonte de Grass do site http://grass.itc.it/, actualmente o pacote mais recente é grass-6.4.0RC5.tar.gz.
Descompactamos o arquivo e entramos na pasta que acabámos de criar com o comando:
cd grass-6.4.0RC5
e configuramos os ficheiros pela compilação com o comando:
./configure --with-tcltk-includes=/usr/include/tcl8.4 --with-proj-share=/usr/share/proj --with-gdal=/usr/local/bin/gdal-config --with-python=/usr/bin/python2.5-config
Compilamos o código fonte:
make
E como utilizador com permissões de administração instalamos as Grass:
sudo make install
Voltamos ao nível superior
cd ..
Instalação das livrarias GDAL-GRASS
Como primeiro passo é necessario criar um ficheiro que podemos chamar "grass.conf" dentro da pasta /etc/ld.so.conf.d. Para tal chamar um editor de texto como o gedit em modo administrador:
sudo gedit /etc/ld.so.conf.d/grass.conf
O ficheiro em questão deverá conter uma referência ao percurso onde se encontram as livrarias de Grass, no nosso caso deve-se incluir o seguinte caminho:
/usr/local/grass-6.4.0RC5/lib/
Gravar o ficheiro e abandonar o gedit.
A seguir descarregamos o código das livrarias do site http://download.osgeo.org/gdal/, actualmente o pacote mais recente é gdal-grass-1.4.3.tar.gz
Descompactamos o arquivo e entramos na pasta que acabámos de criar com o comando:
cd gdal-grass-1.4.3
e configuramos os ficheiros pela compilação com o comando:
./configure --with-grass=/usr/local/grass-6.4.0RC5
Compilamos o código fonte:
make
E como utilizador com permissões de administração instalamos as Grass:
sudo make install
Sem sair da pasta onde acabámos de compilar Gdal-Grass damos o comando
sudo ldconfig
e confirmamos que tudo está a funcionar bem, com o comando:
gdalinfo --formats | grep 'ECW'
deveríamos obter um resultado como:
ECW (rw): ERMapper Compressed Wavelets JP2ECW (rw+): ERMapper JPEG2000
Voltamos ao nível superior
cd ..
Instalação do QGis
Antes de se começar a instalação do QGis há que garantir que todos os pacotes dos quais depende são previamente instalados. Para tal há primeiro que actualizar a lista de repositórios; dar o seguinte comando:
sudo gedit /etc/apt/sources.list
No final deste ficheiro acrestar as seguintes linhas:
deb http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu karmic main deb-src http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu karmic main
Gravar e fechar a janela do gedit. A seguir corre-se o apt-get para actualizar a lista (que também necessita de permissões de administrador):
sudo apt-get update
E para terminar este passo, ha que forçar a verificaçao de dependências:
sudo apt-get build-dep qgis
Finalmente podemos avançar com QGis, primeiro há que descarregar com o subversion a última versão do código fonte:
svn co https://svn.osgeo.org/qgis/trunk/qgis qgis_unstable
Quando o subversion terminar de descarregar o código entramos na pasta que acabámos de criar com o comando:
cd qgis_unstable
Agora é necessário configurar os ficheiros para compilação, com o comando:
ccmake .
E entramos na interface de texto do ccmake. Aqui carregamos na tecla "c" para configurar e logo a seguir irá aparecer uma janela com as dependências necessárias; deve estar tudo correcto, menos o parâmetro
GRASS_PREFIX
que tem de se configurar à mão, de forma a que aponte para o directório de instalação do Grass, nomeadamente:
GRASS_PREFIX /usr/local/grass-6.4.0RC5
Voltamos a carregar na tecla "c" para forçar a configuração e a seguir a tecla "g" para gerar os ficheiros de configuração. Se tudo correu bem o programa ccmake levar-nos-á de volta para a shell.
Agora falta só dar os comandos:
make
E a seguir - como utilizador com permissões de administração - instalamos o Qgis:
sudo make install
Correr o QGis
Para correr o QGis basta dar o comando na shell:
qgis &
O caracter "&" indica ao sistema que o processo do QGis deve correr em fundo (background), libertando assim a shell para outros comandos.
Por fim é possível adicionar um ícone aos menus do Gnome, clicando com o botão direito do rato sobre o menu "Applications" e seleccionando "Edit Menus". Aparece assim uma nova janela onde poderá ser adicionado um novo item. Um novo item para o QGis deverá ser preenchido com "qgis" no campo "Command". O ícone do QGis encontra-se no seguinte caminho:
/usr/local/share/qgis/doc/images/qgis_new_80pct.png
Conclusões
No fim deste procedimento iremos obter uma instalação do Grass e uma do Qgis com suporte para os formatos ECW e MrSID com suporte para Python e com o Grass Plugin.