Finding Chaste Dependencies
Running the Chaste configure step
cmake /path/to/Chaste
should find all Chaste dependencies automatically. This should certainly be the case on supported Ubuntu versions, and if you have followed the InstallGuides/InstallGuide, on all Mac and Linux distributions.
This is a troubleshooting page with information for manually setting hints for dependency locations if they are not be found automatically, or if you wish to specify specific dependency versions when you have multiple versions installed.
Windows
For windows (on scratch at least) you need to specify a generator (using -G) and the location of the third party libraries (using -DCHASTE_DEPS_ROOT_DIR=). So on scratch the command is
cmake -DCHASTE_DEPS_ROOT_DIR=D:\chaste_windows\build\install\third_party_libs -DChaste_USE_PETSC_HDF5=OFF -DHAVE_PARMETIS=ON -GVisual Studio 10 Win64 \path\to\source
Note you need the -DChaste_USE_PETSC_HDF5=OFF because I'm using "Petsc for Windows" for Petsc, which doesn't include hdf5 libraries.
You need -DHAVE_PARMETIS=ON to skip the step which checks that Parmetis is working, it works for the main Chaste build, so not to worry (for now).
Specifying a Compiler
You can specify a C++ and C compiler by setting the CXX and CC environment variables. eg.
CXX=icpc CC=icc cmake /path/to/source
or
CXX=clang++ CC=clang cmake /path/to/source
Specifying PETSc
You can specify a PETSc folder and Arch by setting the PETSC_DIR and PETSC_ARCH environment variables. eg.
PETSC_DIR=/path/to/petsc PETSC_ARCH=linux-intel cmake /path/to/source
OR setting the PETSC_DIR and PETSC_ARCH cmake variables. eg.
cmake -DPETSC_DIR=/path/to/petsc -DPETSC_ARCH=linux-intel /path/to/source
Once CMake has successfully found and tested the PETSc setup, this find/test setup will not be run on subsequent calls to cmake unless either the PETSC_DIR or PETSC_ARCH cmake variables are changed, or the PETSC_CURRENT variable is set to NO. e.g.
cmake -DPETSC_CURRENT=NO .
Specifying Sundials
You can specify a Sundials folder by setting the SUNDIALS_ROOT environment variables.
Specifying HDF5
You can specify a HDF5 folder by setting the HDF5_ROOT environment variables.
Specifying VTK
You can specify a VTK directory by using the VTK_DIR CMake variable (note: NOT an environment variable). eg.
cmake -DVTK_DIR=/path/to/vtk /path/to/source
Specifying Boost
You can specify a Boost directory by using the BOOST_ROOT CMake variable (note: NOT an environment variable).
Notes for CHASTE_DEPS_ROOT_DIR
(Windows only) Note that using this CMake option overwrites any specified library locations
~/.bashrc
You can, of course, configure your machine to set these environment variables automatically in every session. You can, most likely, do this by adding export VARIABLE=VALUE to your ~/.bashrc.
For instance, you may like to use clang and a specific petsc install, so could add the following:
export CXX=clang++ export CC=clang export PETSC_DIR=/path/to/favourite/petsc export PETSC_ARCH=linux-gnu
Previous instructions
This page supersedes the previous instructions for specifying dependencies, now available here: SconsArchive/HostconfigSystem.