Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

trilinos-release-14-4-0 missing symbols at link in libstratimikosbelos.so.14.4  #13456

Closed
m44guy opened this issue Sep 17, 2024 · 9 comments
Closed

Comments

@m44guy
Copy link

m44guy commented Sep 17, 2024

Hello @trilinos/tpetra,

I try to install the "aspect" application from https://aspect.geodynamics.org

it relies on trilinos (release-14-4-0) which is processed by candi script (9.6.0) . This script seems to compile trilinos correctly.

But later, in "/opt/software/glicid/outils/candi-9.6.0/tmp/build/deal.II-v9.5.2/check_compiler_setup/DEAL_II_HAVE_USABLE_FLAGS_DEBUG"

during the step "Linking CXX executable CheckCompilerSetupExec",

there are lots of missing references about Tpetra objects that are needed by libstratimikosbelos.so.14.4, like these ones

/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « Tpetra::MultiVector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::getVector(unsigned long) const » non définie
/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « Tpetra::Vector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::describe(Teuchos::basic_FancyOStream<char, std::char_traits<char> >&, Teuchos::EVerbosityLevel) const » non définie
/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « Tpetra::MultiVector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::norm2(Teuchos::ArrayView<float> const&) const » non définie
/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « Tpetra::MultiVector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::subView(Teuchos::Range1D const&) const » non définie
/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « Tpetra::MultiVector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::removeEmptyProcessesInPlace(Teuchos::RCP<Tpetra::Map<int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> > const> const&) » non définie
/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « Tpetra::Vector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::dot(Tpetra::Vector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> > const&) const » non définie
/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « Tpetra::DistObject<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::doTransfer(Tpetra::SrcDistObject const&, Tpetra::Details::Transfer<int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> > const&, char const*, Tpetra::DistObject<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::ReverseOption, Tpetra::CombineMode, bool) » non définie
/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « Tpetra::MultiVector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::putScalar(float const&) » non définie
/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « Tpetra::MultiVector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::getNumVectors() const » non définie
/opt/software/glicid/outils/candi-9.6.0/trilinos-release-14-4-0/lib/libstratimikosbelos.so.14.4 : erreur : référence à « virtual thunk to Tpetra::MultiVector<float, int, long long, Tpetra::KokkosCompat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace> >::description[abi:cxx11]() const » non définie

What and where should I do something to solve those missing references ?

Regards,
Guy.

@cgcgcg
Copy link
Contributor

cgcgcg commented Sep 17, 2024

@m44guy
Copy link
Author

m44guy commented Sep 17, 2024

Hi Christian,
here you are.
trilinos.package.gz

@cgcgcg
Copy link
Contributor

cgcgcg commented Sep 17, 2024

Looks like you attached the candi script, not the configure output.

@cgcgcg
Copy link
Contributor

cgcgcg commented Sep 17, 2024

What you could try to do is to switch

 Trilinos_ENABLE_FLOAT=ON

to

 Trilinos_ENABLE_FLOAT=OFF

and recompile.

@m44guy
Copy link
Author

m44guy commented Sep 17, 2024

sorry for the mistake, here is all the output about trilinos configure and compilation
trilinos_2.txt.gz

@cgcgcg
Copy link
Contributor

cgcgcg commented Sep 17, 2024

Ok, it definitely looks like we have float enabled everywhere but in Tpetra. We should fix that in our CMake logic. You should be able to get past the issue by modifying the Candi script.

@m44guy
Copy link
Author

m44guy commented Sep 17, 2024

OK thank you ; I'll try it !

@m44guy
Copy link
Author

m44guy commented Sep 19, 2024

It works ; thank you.

@m44guy m44guy closed this as completed Sep 19, 2024
@cgcgcg
Copy link
Contributor

cgcgcg commented Sep 19, 2024

Nice! Thank you for reporting back!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants