# Contents of /trunk/doc/install/trilinos.tex

Revision 6949 - (show annotations)
Thu Feb 6 02:36:07 2020 UTC (15 months, 1 week ago) by uqaeller
File MIME type: application/x-tex
File size: 3094 byte(s)
Release version 5.5
 1 \chapter{Trilinos} 2 \label{app:trilinos} 3 4 In order to solve PDEs with complex coefficients, escript needs to be compiled with \texttt{Trilinos} support. 5 This requires that your version of Trilinos has certain features enabled. 6 Since some precompiled distributions of \texttt{Trilinos} are not built with these features, you may 7 need to compile \texttt{Trilinos} yourself as well. 8 9 While we can't provide support for building \texttt{Trilinos}, we do list below, a configuration file which seems to work for 10 under Debian 9 stretch'. 11 12 \section{Debian stretch'' configuration} 13 14 15 \subsection{Required packages} 16 17 The following packages should be installed to attempt this build: 18 \begin{itemize} 19 \item[] cmake 20 \item[] g++ 21 \item[] libsuitesparse-dev 22 \item[] libmumps-dev 23 \item[] libboost-dev 24 \item[] libscotchparmetis-dev 25 \item[] libmetis-dev 26 \item[] libcppunit-dev 27 \end{itemize} 28 29 30 31 \subsection{Example configuration file} 32 33 \begin{verbatim} 34 #!/bin/bash 35 36 # Set this to the root of your Trilinos source directory. 37 TRILINOS_PATH=../trilinos-12.12.1-Source 38 39 # 40 # You can invoke this shell script with additional command-line 41 # arguments. They will be passed directly to CMake. 42 # 43 EXTRA_ARGS=$@ 44 45 rm -f CMakeCache.txt 46 47 cmake \ 48 -D MPI_C_COMPILER=which mpicc \ 49 -D MPI_CXX_COMPILER=which mpic++ \ 50 -D MPI_Fortran_COMPILER=which mpif77 \ 51 -D CMAKE_INSTALL_PREFIX=/usr/local/trilinos/ \ 52 -D Trilinos_ENABLE_CXX11=ON \ 53 -D Trilinos_ENABLE_Fortran=ON \ 54 -D BUILD_SHARED_LIBS=ON \ 55 -D TPL_ENABLE_BLAS=ON \ 56 -D TPL_ENABLE_LAPACK=ON \ 57 -D TPL_ENABLE_Boost=ON \ 58 -D TPL_ENABLE_Cholmod=ON \ 59 -D TPL_ENABLE_CppUnit=ON \ 60 -D TPL_ENABLE_METIS=ON \ 61 -D TPL_ENABLE_Pthread=ON \ 62 -D TPL_ENABLE_UMFPACK=ON \ 63 -D TPL_BLAS_INCLUDE_DIRS=/usr/include/suitesparse \ 64 -D TPL_Cholmod_INCLUDE_DIRS=/usr/include/suitesparse \ 65 -D TPL_Cholmod_LIBRARIES='libcholmod.so;libamd.so;libcolamd.so' \ 66 -D TPL_UMFPACK_INCLUDE_DIRS=/usr/include/suitesparse \ 67 -D Trilinos_ENABLE_Amesos=ON \ 68 -D Trilinos_ENABLE_Amesos2=ON \ 69 -D Trilinos_ENABLE_AztecOO=ON \ 70 -D Trilinos_ENABLE_Belos=ON \ 71 -D Trilinos_ENABLE_Ifpack=ON \ 72 -D Trilinos_ENABLE_Ifpack2=ON \ 73 -D Trilinos_ENABLE_Kokkos=ON \ 74 -D Trilinos_ENABLE_Komplex=ON \ 75 -D Trilinos_ENABLE_ML=ON \ 76 -D Trilinos_ENABLE_MueLu=ON \ 77 -D Trilinos_ENABLE_Teuchos=ON \ 78 -D Trilinos_ENABLE_Tpetra=ON \ 79 -D Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES=ON \ 80 -D KOKKOS_ENABLE_AGGRESSIVE_VECTORIZATION=ON \ 81 -D Tpetra_INST_COMPLEX_DOUBLE=ON \ 82 -D Teuchos_ENABLE_COMPLEX=ON \ 83 -D Tpetra_INST_INT_LONG=OFF \ 84 -D Tpetra_INST_LONG_LONG=OFF \ 85 -D Tpetra_INST_INT_LONG_LONG=OFF \ 86 -D TpetraKernels_ENABLE_Experimental=ON \ 87 -D Trilinos_ENABLE_OpenMP=ON \ 88 -D Trilinos_ENABLE_EXPLICIT_INSTANTIATION=ON \ 89 -D KOKKOS_ENABLE_COMPILER_WARNINGS=ON \ 90 -D Amesos2_ENABLE_Basker=ON \ 91 -D Tpetra_INST_SERIAL:BOOL=ON \ 92 -D Trilinos_ENABLE_TESTS=OFF \ 93$EXTRA_ARGS \ 94 \$TRILINOS_PATH 95 \end{verbatim}