Dear all,
I'm trying to compile the 9.5.1 version without MPI on Ubuntu 20.04 but I'm
getting the following error:
/home/tom/p/dealii/source/lac/petsc_communication_pattern.cc: In member
function ‘void
dealii::PETScWrappers::CommunicationPattern::export_to_ghosted_array_start(const
dealii::ArrayView<const ElementType>&, const
dealii::ArrayView<ElementType>&) const’:
/home/tom/p/dealii/source/lac/petsc_communication_pattern.cc:264:37: error:
‘mpi_type_id_for_type’ is not a member of ‘dealii::Utilities::MPI’
264 | auto datatype = Utilities::MPI::mpi_type_id_for_type<Number>;
| ^~~~~~~~~~~~~~~~~~~~
/home/tom/p/dealii/source/lac/petsc_communication_pattern.cc:264:64: error:
expected primary-expression before ‘>’ token
264 | auto datatype = Utilities::MPI::mpi_type_id_for_type<Number>;
| ^
/home/tom/p/dealii/source/lac/petsc_communication_pattern.cc:264:65: error:
expected primary-expression before ‘;’ token
264 | auto datatype = Utilities::MPI::mpi_type_id_for_type<Number>;
| ^
/home/tom/p/dealii/source/lac/petsc_communication_pattern.cc: In member
function ‘void
dealii::PETScWrappers::CommunicationPattern::export_to_ghosted_array_finish(const
dealii::ArrayView<const ElementType>&, const
dealii::ArrayView<ElementType>&) const’:
/home/tom/p/dealii/source/lac/petsc_communication_pattern.cc:280:37: error:
‘mpi_type_id_for_type’ is not a member of ‘dealii::Utilities::MPI’
280 | auto datatype = Utilities::MPI::mpi_type_id_for_type<Number>;
| ^~~~~~~~~~~~~~~~~~~~
/home/tom/p/dealii/source/lac/petsc_communication_pattern.cc:280:64: error:
expected primary-expression before ‘>’ token
280 | auto datatype = Utilities::MPI::mpi_type_id_for_type<Number>;
| ^
/home/tom/p/dealii/source/lac/petsc_communication_pattern.cc:280:65: error:
expected primary-expression before ‘;’ token
280 | auto datatype = Utilities::MPI::mpi_type_id_for_type<Number>;
and so on.
mpi_type_id_for_type is defined in source/base/mpi.cc, but inside #ifdef
... #endif:
#ifdef DEAL_II_WITH_MPI
// Provide definitions of template variables for all valid
instantiations.
template const MPI_Datatype mpi_type_id_for_type<bool>;
template const MPI_Datatype mpi_type_id_for_type<char>;
template const MPI_Datatype mpi_type_id_for_type<signed char>;
template const MPI_Datatype mpi_type_id_for_type<short>;
template const MPI_Datatype mpi_type_id_for_type<int>;
template const MPI_Datatype mpi_type_id_for_type<long int>;
template const MPI_Datatype mpi_type_id_for_type<unsigned char>;
template const MPI_Datatype mpi_type_id_for_type<unsigned short>;
template const MPI_Datatype mpi_type_id_for_type<unsigned long int>;
template const MPI_Datatype mpi_type_id_for_type<unsigned long long
int>;
template const MPI_Datatype mpi_type_id_for_type<float>;
template const MPI_Datatype mpi_type_id_for_type<double>;
template const MPI_Datatype mpi_type_id_for_type<long double>;
template const MPI_Datatype mpi_type_id_for_type<std::complex<float>>;
template const MPI_Datatype mpi_type_id_for_type<std::complex<double>>;
#endif
which should't be defined without MPI if I'm correct so the compilation
error is about right.
Version 9.4.x compiles without problem.
Any advice please? Thanks
Tom
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see
https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/b5b1160e-96df-443a-aaf9-7384b41e659dn%40googlegroups.com.