[Trilinos-Users] Problem building Trilinos for Deal II

Miley Timothy (CI/DAP6.1) Timothy.Miley at us.bosch.com
Fri Apr 28 15:06:07 EDT 2017


Hello.

I'm a system administrator trying to build Trilinos for inclusion into the Deal II software.  I have built Trilinos 12.10.1 with Deal II 8.4.1.  I don't know if I need to ask the Deal II support or here for assistance.

I used these modules to build Trilinos and these cmake options:
Modules used:
  1) gnu/4.7.2        4) p4est/1.1        7) swig/3.0.12
  2) openmpi/2.1.0    5) hdf5/1.8.18      8) cmake/3.4.1
  3) superlu/5.1.2    6) parmetis/4.0.2

cmake ../trilinos-12.10.1-Source \
-DTrilinos_ENABLE_Sacado=ON \
-DTrilinos_ENABLE_Stratimikos=ON \
-DTrilinos_ENABLE_MueLu=ON \
-DCMAKE_BUILD_TYPE=RELEASE \
-DBLAS_LIBRARY_NAMES:STRING="blas" \
-DLAPACK_LIBRARY_NAMES:STRING="lapack" \
-DCMAKE_VERBOSE_MAKEFILE=FALSE \
-DTrilinos_VERBOSE_CONFIGURE=FALSE \
-DTPL_ENABLE_MPI=ON \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_INSTALL_PREFIX=/gpfs3/applications/trilinos/12.10.1/$MODULES_MPINAME/$MODULES_MPIVER/$MODULES_CVEN/$MODULES_CVER \
-DTPL_ENABLE_MKL=OFF \
-DTPL_ENABLE_BLAS=ON \
-DTPL_ENABLE_LAPACK=ON \
-DTPL_BLAS_LIBRARIES='blas' \
-DTPL_LAPACK_LIBRARIES='lapack' \
-DTPL_ENABLE_Matio=OFF \
-DTrilinos_ENABLE_CXX11=ON \
-DBUILD_SHARED_LIBS=OFF

I saw no notable errors, and the software installed without issues.  With Deal II, I used this:

Module used:
  1) gnu/4.7.2          4) p4est/1.1          7) swig/3.0.12
  2) openmpi/2.1.0      5) hdf5/1.8.18        8) cmake/3.4.1
  3) superlu/5.1.2      6) parmetis/4.0.2     9) trilinos/12.10.1

cmake -DCMAKE_INSTALL_PREFIX=/gpfs3/applications/deal_II/8.4.1/$MODULES_MPINAME/$MODULES_MPIVER/$MODULES_CVEN/$MODULES_CVER \
-DDEAL_II_WITH_THREADS=OFF \
-DDEAL_II_WITH_MPI=ON \
-DDEAL_II_WITH_PETSC=OFF \
-DDEAL_II_WITH_NETCDF=OFF \
-DP4EST_DIR=/gpfs3/applications/p4est/1.1/$MODULES_MPINAME/$MODULES_MPIVER/$MODULES_CVEN/$MODULES_CVER \
-DHDF5_DIR=/gpfs3/applications/hdf5/1.8.18/$MODULES_MPINAME/$MODULES_MPIVER/$MODULES_CVEN/$MODULES_CVER \
-DTRILINOS_DIR=/gpfs3/applications/trilinos/12.10.1/$MODULES_MPINAME/$MODULES_MPIVER/$MODULES_CVEN/$MODULES_CVER \
-DDEAL_II_COMPONENT_PARAMETER_GUI=ON \
-DDEAL_II_WITH_P4EST=ON \
-DDEAL_II_WITH_TRILINOS=ON \
-DTrilinos_INCLUDE_DIRS=/gpfs3/applications/trilinos/12.10.1/$MODULES_MPINAME/$MODULES_MPIVER/$MODULES_CVEN/$MODULES_CVER/include \
-DDEAL_II_WITH_CXX11=ON \
../dealii-8.4.1

However, I get this kind of error when trying to build one of the test files.  Specifically, Step-32.

Currently Loaded Modulefiles:
  1) gnu/4.7.2          4) deal-ii/8.4.1      7) parmetis/4.0.2
  2) openmpi/2.1.0      5) p4est/1.1          8) swig/3.0.12
  3) trilinos/12.10.1   6) superlu/5.1.2      9) hdf5/1.8.18
[xxx step-32]$ cmake .
-- Autopilot invoked
###
#
#  Project  step-32  set up with  deal.II-8.4.1  found at
#      /gpfs3/applications/deal_II/8.4.1/openmpi/2.1.0/gnu/4.7.2
#
#  CMAKE_BUILD_TYPE:          Debug
#
#  You can now run...
-- Configuring done
-- Generating done
-- Build files have been written to: /home/xxx/step-32

[xxx step-32]$ make
Scanning dependencies of target step-32
Linking CXX executable step-32
CMakeFiles/step-32.dir/step-32.cc.o: In function `Step32::BoussinesqFlowProblem<
2>::project_temperature_field()':
/home/xxx/step-32/step-32.cc:1768: undefined reference to `void dealii::ConstraintMatrix::distribute<dealii::TrilinosWrappers::MPI::Vector>(dealii::TrilinosWrappers::MPI::Vector&) const'
CMakeFiles/step-32.dir/step-32.cc.o: In function `dealii::Solver<dealii::TrilinosWrappers::MPI::BlockVector>::~Solver()':
/gpfs3/applications/deal_II/8.4.1/openmpi/2.1.0/gnu/4.7.2/include/deal.II/lac/solver.h:325: undefined reference to `dealii::GrowingVectorMemory<dealii::TrilinosWrappers::MPI::BlockVector>::~GrowingVectorMemory()'
/gpfs3/applications/deal_II/8.4.1/openmpi/2.1.0/gnu/4.7.2/include/deal.II/lac/solver.h:325: undefined reference to `dealii::GrowingVectorMemory<dealii::TrilinosWrappers::MPI::BlockVector>::~GrowingVectorMemory()'
CMakeFiles/step-32.dir/step-32.cc.o: In function `Step32::BoussinesqFlowProblem<2>::solve()':
/home/xxx/step-32/step-32.cc:3034: undefined reference to `void dealii::ConstraintMatrix::distribute<dealii::TrilinosWrappers::MPI::BlockVector>(dealii::TrilinosWrappers::MPI::BlockVector&) const'
/home/xxx/step-32/step-32.cc:3100: undefined reference to `void dealii::ConstraintMatrix::distribute<dealii::TrilinosWrappers::MPI::Vector>(dealii::TrilinosWrappers::MPI::Vector&) const'

This is only an excerpt from a long list of errors that look similar.  So, it looks like Trilinos libraries are missing some sort of C++ symbols.

The module looks like this:
set     name    trilinos
set     ver     12.10.1
set     root    /gpfs3/applications/trilinos
set     mpiroot $root/$ver/$env(MODULES_MPINAME)/$env(MODULES_MPIVER)/$env(MODULES_CVEN)/$env(MODULES_CVER)
prepend-path -d ":"  LD_LIBRARY_PATH "${mpiroot}/lib"
prepend-path -d ":"  INCLUDE "${mpiroot}/include"

setenv  TRILINOS_DIR $mpiroot

Has anyone seen this problem before?  I have no idea how to fix the issue.

Best Regards

Timothy Miley
Robert Bosch LLC
Corporate Information Systems & Services
Engineering Applications (CI/DAP6.1)
4005 Miranda Avenue
Palo Alto, CA 94304
http://www.bosch.us<http://www.bosch.us/>


timothy.miley at us.bosch.com<mailto:timothy.miley at us.bosch.com>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://trilinos.org/pipermail/trilinos-users/attachments/20170428/eca30b79/attachment.html>


More information about the Trilinos-Users mailing list