Difference between revisions of "Building on Debian"
(Created page with "Building GridPACK is relatively straightforward on [https://www.debian.org/ | Debian 9 (stretch)] systems. At the time of writing, [https://www.debian.org/ | Debian 9] was th...") |
|||
Line 3: | Line 3: | ||
== System Preparation == | == System Preparation == | ||
− | Starting with a ''clean'', minimal installation, add contrib and non-free components of the Debian distribution need to apt sources (ParMETIS is in non-free). Edit | + | Starting with a ''clean'', minimal installation, add contrib and non-free components of the Debian distribution need to apt sources (ParMETIS is in non-free). Edit <code>/etc/apt/sources.list</code> and make the main repository line look like this: |
deb http://ftp.us.debian.org/debian/ stretch main contrib non-free | deb http://ftp.us.debian.org/debian/ stretch main contrib non-free | ||
Line 27: | Line 27: | ||
libboost-random-dev libboost-filesystem-dev libboost-system-dev | libboost-random-dev libboost-filesystem-dev libboost-system-dev | ||
− | This will install the default MPI implementation (OpenMPI), including compiler wrappers | + | This will also install the default MPI implementation (OpenMPI), including compiler wrappers. |
=== PETSc === | === PETSc === | ||
+ | |||
+ | Install the real-valued version of [https://www.mcs.anl.gov/petsc/ PETSc] with | ||
+ | |||
+ | sudo apt-get install petsc-dev | ||
+ | |||
+ | or the complex-valued version with | ||
+ | |||
+ | sudo apt-get install libpetsc3.7.5-dev | ||
=== Global Arrays === | === Global Arrays === | ||
+ | |||
+ | [http://hpc.pnl.gov/globalarrays/ Global Arrays] has lots of dependencies. Unfortunately, installing the Debian GA package (version <code>5.4~beta~r10636+dfsg-5</code>) does not enforce any of them. Installing [https://www.mcs.anl.gov/petsc/ PETSc] first will install most of them. This should complete the GA installation: | ||
+ | |||
+ | sudo apt-get install libglobalarrays-dev libarmci-mpi-dev | ||
+ | |||
+ | === ParMETIS === | ||
+ | |||
+ | Install [http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview ParMETIS] using | ||
+ | |||
+ | sudo apt-get install libparmetis-dev libmetis-dev | ||
+ | |||
+ | === GNU Linear Programming Kit === | ||
+ | |||
+ | [https://www.gnu.org/software/glpk/ GLPK] is optional and can be installed with | ||
+ | sudo apt-get install libglpk-dev | ||
+ | |||
+ | == GridPACK Configuration and Build == |
Revision as of 18:07, 14 February 2018
Building GridPACK is relatively straightforward on | Debian 9 (stretch) systems. At the time of writing, | Debian 9 was the current stable distribution. There is no need to build any prerequisite software. All can be installed from Debian package repositories.
Contents
System Preparation
Starting with a clean, minimal installation, add contrib and non-free components of the Debian distribution need to apt sources (ParMETIS is in non-free). Edit /etc/apt/sources.list
and make the main repository line look like this:
deb http://ftp.us.debian.org/debian/ stretch main contrib non-free deb-src http://ftp.us.debian.org/debian/ stretch main contrib non-free
and then refresh the system package lists with
sudo apt-get update
Prerequisite Installation
General
Install a C++ compiler, CMake, and Git:
sudo apt-get install git cmake g++
Boost
Install necessary Boost libraries:
sudo apt-get install libboost-dev libboost-mpi-dev \ libboost-random-dev libboost-filesystem-dev libboost-system-dev
This will also install the default MPI implementation (OpenMPI), including compiler wrappers.
PETSc
Install the real-valued version of PETSc with
sudo apt-get install petsc-dev
or the complex-valued version with
sudo apt-get install libpetsc3.7.5-dev
Global Arrays
Global Arrays has lots of dependencies. Unfortunately, installing the Debian GA package (version 5.4~beta~r10636+dfsg-5
) does not enforce any of them. Installing PETSc first will install most of them. This should complete the GA installation:
sudo apt-get install libglobalarrays-dev libarmci-mpi-dev
ParMETIS
Install ParMETIS using
sudo apt-get install libparmetis-dev libmetis-dev
GNU Linear Programming Kit
GLPK is optional and can be installed with
sudo apt-get install libglpk-dev