Any idea as to what might be the cause of this problem? I encountered
it today also when trying to build on my laptop, OS X 10.6.8, gcc and
gfortran 4.6, openmpi 1.4.4, Trilinos 10.4.2, petsc-3.2 (latest from
hg). The problem only occurs when trying to compile with both petsc
and Trilinos. Compilation is successful when either petsc or Trilinos
is selected, just not both.

Max

On Thu, May 3, 2012 at 11:34 AM, Max Rudolph <[email protected]> wrote:
> I am having trouble installing deal.ii (svn) with Trilinos 10.4.2 on a
> linux system (itasca.msi.umn.edu). I believe the problem i is the same
> one that another user was having last year (message included below). I
> am trying to use OpenMPI 1.4.4 with the intel compilers version 12.1.
>
> I successfully compiled and installed Trilinos with MPI, using this
> configure command:
> CC=mpicc CXX=mpic++ FC=mpif90 F77=mpif77 F90=mpif90 cmake -D
> Trilinos_ENABLE_OPTIONAL_PACKAGES:BOOL=ON   \ -D
> Trilinos_ENABLE_Sacado:BOOL=ON       \
> -D Trilinos_ENABLE_Stratimikos:BOOL=ON       \
> -D CMAKE_BUILD_TYPE:STRING=RELEASE       \
> -D CMAKE_CXX_FLAGS:STRING="-g -O3"       \
> -D CMAKE_C_FLAGS:STRING="-g -O3"       \
> -D CMAKE_FORTRAN_FLAGS:STRING="-g -O3"       \
> -D CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE       \
> -D Trilinos_VERBOSE_CONFIGURE:BOOL=FALSE       \
> -D TPL_ENABLE_MPI:BOOL=ON       \
> -D CMAKE_INSTALL_PREFIX:PATH=/home/it2/max/sw/trilinos-10.4.2       \
> -D BUILD_SHARED_LIBS:BOOL=ON \
> -D 
> TPL_BLAS_LIBRARIES:STRING="/soft/intel/x86_64/12.1/8.273/composer_xe_2011_sp1.8.273/mkl/lib/intel64/libmkl_blas95_lp64.a"
> \
> -D 
> TPL_LAPACK_LIBRARIES:STRING="/soft/intel/x86_64/12.1/8.273/composer_xe_2011_sp1.8.273/mkl/lib/intel64/libmkl_lapack95_lp64.a"
> \
> `pwd`/..
>
> I then proceeded to configure deal.ii using:
> CC=mpicc CXX=mpic++ F90=mpif90 F77=mpif77 ./configure --enable-shared
> --enable-mpi --disable-threads --with-umfpack
> --with-blas="mkl_intel_lp64 -Wl,--start-group
> -L/soft/intel/x86_64/12.1/8.273/composer_xe_2011_sp1.8.273/mkl/lib/intel64
> -lmkl_intel_thread -lmkl_core -Wl,--end-group -liomp5 -lpthread"
> --with-p4est=/home/it2/max/sw/p4est
> --with-trilinos=/home/it2/max/sw/trilinos-10.4.2
> --with-trilinos-include=/home/it2/max/sw/trilinos-10.4.2/include
> --with-trilinos-libs=/home/it2/max/sw/trilinos-10.4.2/lib
>
> Compilation is aborted with the following error message:
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc(519):
> error: namespace "ML_Epetra" has no member "SetDefaults"
>           ML_Epetra::SetDefaults("SA",parameter_list);
>                      ^
>
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc(550):
> error: namespace "ML_Epetra" has no member "SetDefaults"
>           ML_Epetra::SetDefaults("NSSA",parameter_list);
>                      ^
>
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc(630):
> error: the type in a dynamic_cast must be a pointer or reference to a
> complete class type, or void *
>             dynamic_cast<ML_Epetra::MultiLevelPreconditioner*>
> (preconditioner.get());
>                          ^
>
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc(633):
> error: pointer to incomplete class type is not allowed
>           multilevel_operator->PrintUnused(0);
>           ^
>
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc(644):
> error: incomplete type is not allowed
>       preconditioner.reset (new ML_Epetra::MultiLevelPreconditioner
>                                 ^
>
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc(645):
> error: expected a ")"
>                             (matrix.trilinos_matrix(), ml_parameters));
>                                                      ^
>
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc(644):
> error: no instance of overloaded function "boost::shared_ptr<T>::reset
> [with T=Epetra_Operator]" matches the argument list
>             argument types are: (<error-type>)
>             object type is: boost::shared_ptr<Epetra_Operator>
>       preconditioner.reset (new ML_Epetra::MultiLevelPreconditioner
>                      ^
>
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc(682):
> error: the type in a dynamic_cast must be a pointer or reference to a
> complete class type, or void *
>         dynamic_cast<ML_Epetra::MultiLevelPreconditioner*>
> (preconditioner.get());
>                      ^
>
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc(683):
> error: pointer to incomplete class type is not allowed
>       multilevel_operator->ReComputePreconditioner();
>       ^
>
> compilation aborted for
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc (code 2)
>
> Here is the actual command being run by make (retrieved using make -n)
> echo "======================optimized====== lac/trilinos_precondition.cc"
> /opt/openmpi/1.4.4/intel/bin/mpic++  -DHAVE_CONFIG_H -DHAVE_ISNAN
> -DBOOST_NO_HASH -DBOOST_NO_SLIST -O2 -unroll -w0 -wd424 -wd11
> -opt-report 0 -vec-report0 -fPIC -I/home/it2/max/sw/p4est/FAST/include
>  -I/home/it2/max/sw/deal.II/include
> -I/home/it2/max/sw/deal.II/include/deal.II
> -I/home/it2/max/sw/deal.II/contrib/boost-1.49.0/include
> -I/home/it2/max/sw/deal.II/contrib/umfpack/UMFPACK/Include
> -I/home/it2/max/sw/deal.II/contrib/umfpack/AMD/Include
> -I/home/it2/max/sw/deal.II/contrib -I/home/it2/max/sw/deal.II/include
> -I/home/it2/max/sw/petsc-3.2-p7/include
> -I/home/it2/max/sw/petsc-3.2-p7/arch-linux2-c-openmpi-opt/include
> -I/opt/openmpi/1.4.4/intel/include
> -I/soft/openmpi/sle11.1/1.4.4/intel/include
> -I/home/it2/max/sw/trilinos-10.4.2/include  -c
> /home/it2/max/sw/deal.II/source/lac/trilinos_precondition.cc -o
> /home/it2/max/sw/deal.II/lib/optimized/lac_trilinos_precondition.o
>
> Thanks for your help, and please let me know if there is additional
> information that might help in tracking down the cause of this
> problem.
>
> Best Regards,
> Max
>
>> Re: [deal.II] problems with compilation of trilinos_precondition.cc
>> Wolfgang Bangerth
>> Sat, 25 Jun 2011 16:41:22 -0700
>> Krishna,
>> > I am running into problem with compilation of
>> > trilinos_precondition.cc. I have tried deal.ii installation with
>> > different version of trilinos (10.4.2,10.6.2,10.6.4), but the problem
>> > persists.
>> >
>> > ======================optimized====== lac/trilinos_block_vector.cc
>> > ======================optimized====== lac/trilinos_precondition.cc
>> > ======================debug========== lac/sparsity_pattern.cc
>> > /opt/software/numerics/deal.II/source/lac/trilinos_precondition.cc: In
>> > member function ?void
>> > dealii::TrilinosWrappers::PreconditionAMG::initialize(const
>> > dealii::TrilinosWrappers::SparseMatrix&, const
>> > dealii::TrilinosWrappers::PreconditionAMG::AdditionalData&)?:
>> > /opt/software/numerics/deal.II/source/lac/trilinos_precondition.cc:519:
>> > error: ?SetDefaults? is not a member of ?ML_Epetra?
>> > [...]
>> Have you figured out what causes this? I've installed deal.II and Trilinos
>> many times and I've never seen this problem. ML_Epetra::SetDefaults is 
>> defined
>> in the file ml_MultiLevelPreconditioner.h, which we do include in
>> lac/trilinos_preconditioner.cc, so I'm not quite sure what may cause this
>> problem...
>> Best
>>
>> W.
_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii

Reply via email to