Panzer: Link problem when Tpetra_INST_INT_INT=OFF
Created by: kddevin
@trilinos/panzer
Expectations
Panzer should build with Tpetra_INST_INT_INT=OFF
Current Behavior
I get link errors due to use of Tpetra::MultiVector with global ordinals = int.
"virtual thunk to Tpetra::MultiVector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::describe(Teuchos::basic_FancyOStream<char, std::__1::char_traits<char> >&, Teuchos::EVerbosityLevel) const", referenced from:
vtable for Tpetra::MultiVector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> > in libpanzer-dof-mgr.a(Panzer_DOFManager.cpp.o)
construction vtable for Tpetra::MultiVector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >-in-Tpetra::Vector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> > in libpanzer-dof-mgr.a(Panzer_Filtered_UniqueGlobalIndexer.cpp.o)
vtable for Tpetra::MultiVector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> > in libpanzer-dof-mgr.a(Panzer_Filtered_UniqueGlobalIndexer.cpp.o)
"virtual thunk to Tpetra::Vector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::describe(Teuchos::basic_FancyOStream<char, std::__1::char_traits<char> >&, Teuchos::EVerbosityLevel) const", referenced from:
vtable for Tpetra::Vector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> > in libpanzer-dof-mgr.a(Panzer_Filtered_UniqueGlobalIndexer.cpp.o)
Motivation and Context
We'd like to build Trilinos with only one global ordinal type enabled.
Definition of Done
Panzer builds and runs with Tpetra_INST_INT_INT=OFF.
Possible Solution
I see Tpetra::MultiVector<int,int,int> in tUniqueGlobalIndexerUtilities.cpp; perhaps this is the source of the problem. One could disable this test when Tpetra_INST_INT_INT=OFF.
Or perhaps the problem is due to some Epetra vs Tpetra issue?
Steps to Reproduce
cmake \
-D Trilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL=ON \
-D Tpetra_INST_INT_LONG_LONG:BOOL=ON \
-D Tpetra_INST_INT_INT:BOOL=OFF \
-D CMAKE_BUILD_TYPE:STRING="DEBUG" \
-D CMAKE_VERBOSE_MAKEFILE:BOOL=OFF \
\
-D TPL_ENABLE_MPI:BOOL=ON \
-D MPI_EXEC_MAX_NUMPROCS:STRING=11 \
\
-D TPL_ENABLE_BinUtils:BOOL=OFF \
-D TPL_ENABLE_Pthread:BOOL=OFF \
\
-D CMAKE_C_FLAGS:STRING="-Wall -pedantic -Wno-unknown-pragmas -Wno-narrowing -Wno-inline -Wshadow -Wdeprecated-declarations -Wempty-body -Wignored-qualifiers -Wmissing-field-initializers -Wsign-compare -Wtype-limits -Wuninitialized -Winit-self -fstrict-aliasing -Wno-long-long" \
-D CMAKE_CXX_FLAGS:STRING="-Wall -pedantic -Wno-unknown-pragmas -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-inline -Wshadow -Wdeprecated-declarations -Wempty-body -Wignored-qualifiers -Wmissing-field-initializers -Wsign-compare -Wtype-limits -Wuninitialized -Winit-self -fstrict-aliasing" \
\
-D Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL=ON \
-D Trilinos_ENABLE_TESTS:BOOL=ON \
-D Trilinos_ENABLE_EXAMPLES:BOOL=ON \
\
-D Trilinos_ENABLE_SHADOW_WARNINGS:BOOL=ON \
-D Trilinos_VERBOSE_CONFIGURE:BOOL=OFF \
-D Trilinos_ENABLE_Fortran:BOOL=OFF \
\
-D Tpetra_ENABLE_DEPRECATED_CODE:BOOL=OFF \
\
-D Trilinos_ENABLE_Stokhos:BOOL=ON \
-D Trilinos_ENABLE_Nox:BOOL=ON \
-D Trilinos_ENABLE_ROL:BOOL=ON \
-D Trilinos_ENABLE_MiniTensor:BOOL=OFF \
-D ROL_ENABLE_MiniTensor:BOOL=OFF \
-D Trilinos_ENABLE_Panzer:BOOL=ON \
-D Trilinos_ENABLE_PanzerAdaptersSTK:BOOL=OFF \
-D Trilinos_ENABLE_PanzerAdaptersIOSS:BOOL=OFF \
-D Trilinos_ENABLE_Thyra:BOOL=ON \
-D Trilinos_ENABLE_MueLu:BOOL=ON \
-D Trilinos_ENABLE_Anasazi:BOOL=ON \
-D Trilinos_ENABLE_Belos:BOOL=ON \
\
-D Teuchos_ENABLE_STACKTRACE:BOOL=OFF \
-D Teuchos_ENABLE_LONG_LONG_INT:BOOL=ON \
.. |& tee OUTPUT.CMAKE
make -j 8 |& tee OUTPUT.MAKE
Your Environment
- Relevant repo SHA1s:
- Relevant configure flags or configure script:
- Operating system and version:
- Compiler and TPL versions:
Related Issues
- Blocks
- Is blocked by
- Follows
- Precedes
- Related to
- Part of
- Composed of