Para compilar o PZ é preciso preparar o ambiente antes, instalando alguns pacotes e bibliotecas necessárias/opcionais.
Preparando o ambiente
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