Para compilar o PZ é preciso preparar o ambiente antes, instalando alguns pacotes e bibliotecas necessárias/opcionais.
Pré-requisitos (pacotes/softwares):Ter os pacotes do
SmartSVN e
CMAKE instalados no seu sistema.
Utilizamos as versões:
- SmartSVN 6.6.9
- CMake 2.8.5
Pré-requisitos (bibliotecas necessárias/opcionais):-
pthread lib
-
boost lib opcional (se instalada, adicionar os seguintes parametros na linha do cmake:
-DUSING_BOOST=ON -DBoost_INCLUDE_DIR=/usr/local/include -DBoost_LIBRARY_DIRS=/usr/local/lib)
-
log4cxx lib opcional (se instalada, adicionar os seguintes parametros na linha do cmake:
-DUSING_LOG4CXX=ON -DLOG4CXX_INCLUDE=/usr/local/include -DLOG4CXX_LIB=/usr/lib)
-
metis lib opcional (se instalada, adicionar os seguintes parametros na linha do cmake:
-DUSING_METIS=ON -DMETIS_INCLUDE=/usr/local/include -DMETIS_LIB=/usr/local/lib)
Para um howto de como instalá-las, acesse a
documentação do PP/External libs.
Download do código do PZ:O código do PZ está no googlecode, sua última versão pode ser acessada/baixada através do comando abaixo:
svn checkout http://neopz.googlecode.com/svn/trunk/ /tmp/neopz-read-only
Compilando o código
Compilando o código (pré-requisitos instalados em seus locais padrão):cd /tmp/neopz-read-only
cmake .
makeSe as bibliotecas foram instaladas em locais não-padrão, talvez seja preciso executar o cmake passando como parametro os caminhos das bibliotecas, veja abaixo:
Compilando o código (pré-requisitos instalados em locais NÃO padrão): cd /tmp/neopz-read-only
cmake -DBoost_INCLUDE_DIR=/usr/local/include -DBoost_LIBRARY_DIRS=/usr/local/lib -DCMAKE_CXX_COMPILER=/usr/bin/g++ -DLOG4CXX_INCLUDE=/usr/local/include -DLOG4CXX_LIB=/usr/lib -DMETIS_INCLUDE=/usr/local/include -DMETIS_LIB=/usr/local/lib -DPTHREAD_INCLUDE=/usr/include -DPTHREAD_LIB=/usr/lib -DCMAKE_BUILD_TYPE=Release .
make Existem outras opções para a compilação, por exemplo, escolhendo as bibliotecas que serão utilizadas e selecionando os módulos que serão compilados, veja abaixo:
Compilando o código (mais opções e parâmetros):cd /tmp/neopz-read-only
cmake -DBUILD_PROJECTS=ON -DBUILD_TUTORIAL=ON -DBUILD_UNITTESTING=ON -DUSING_BOOST=ON -DUSING_LOG4CXX=ON -DUSING_METIS=ON -DBoost_INCLUDE_DIR=/usr/local/include -DBoost_LIBRARY_DIRS=/usr/local/lib -DCMAKE_CXX_COMPILER=/usr/bin/g++ -DLOG4CXX_INCLUDE=/usr/local/include -DLOG4CXX_LIB=/usr/lib -DMETIS_INCLUDE=/usr/local/include -DMETIS_LIB=/usr/local/lib -DPTHREAD_INCLUDE=/usr/include -DPTHREAD_LIB=/usr/lib -DCMAKE_BUILD_TYPE=Release .
make