Thyra: undefined reference to Thyra::SpmdVectorSpaceUtilities::computeGlobalDim
Created by: rrdrake
@trilinos/thyra
Current Behavior:
A Sierra build against Trilinos built using TriBITS fails to link due to undefined references.
/projects/sierra/linux_rh6/nightly/linux-gcc-7.2.0-ip-openmpi-1.10.2.release.master_native_trilinos/objs/apps/Salinas/votd/gcc-7.2.0/release/address-model-64/mpi-openmpi/runtime-link-shared/threading-multi/libsalinas_lib.a(qevp.o): In function Thyra::SpmdVectorSpaceDefaultBase<double>::updateState(long, bool): qevp.C:(.text._ZN5Thyra26SpmdVectorSpaceDefaultBaseIdE11updateStateElb[_ZN5Thyra26SpmdVectorSpaceDefaultBaseIdE11updateStateElb]+0x93): undefined reference to Thyra::SpmdVectorSpaceUtilities::computeGlobalDim(Teuchos::Comm<long> const&, long) qevp.C:(.text._ZN5Thyra26SpmdVectorSpaceDefaultBaseIdE11updateStateElb[_ZN5Thyra26SpmdVectorSpaceDefaultBaseIdE11updateStateElb]+0xc7): undefined reference to Thyra::SpmdVectorSpaceUtilities::computeMapCode(Teuchos::Comm<long> const&, long) qevp.C:(.text._ZN5Thyra26SpmdVectorSpaceDefaultBaseIdE11updateStateElb[_ZN5Thyra26SpmdVectorSpaceDefaultBaseIdE11updateStateElb]+0xd8): undefined reference to Thyra::SpmdVectorSpaceUtilities::computeLocalOffset(Teuchos::Comm<long> const&, long) /projects/sierra/linux_rh6/nightly/linux-gcc-7.2.0-ip-openmpi-1.10.2.release.master_native_trilinos/objs/apps/Salinas/votd/gcc-7.2.0/release/address-model-64/mpi-openmpi/runtime-link-shared/threading-multi/libsalinas_lib.a(qevp.o): In function void RTOpPack::SPMD_apply_op<double>(Teuchos::Comm<long> const*, RTOpPack::RTOpT<double> const&, int, int, RTOpPack::ConstSubVectorView<double> const*, int, RTOpPack::SubVectorView<double> const*, RTOpPack::ReductTarget* const*): qevp.C:(.text._ZN8RTOpPack13SPMD_apply_opIdEEvPKN7Teuchos4CommIlEERKNS_5RTOpTIT_EEiiPKNS_18ConstSubVectorViewIS7_EEiPKNS_13SubVectorViewIS7_EEPKPNS_12ReductTargetE[_ZN8RTOpPack13SPMD_apply_opIdEEvPKN7Teuchos4CommIlEERKNS_5RTOpTIT_EEiiPKNS_18ConstSubVectorViewIS7_EEiPKNS_13SubVectorViewIS7_EEPKPNS_12ReductTargetE]+0x2b): undefined reference to RTOpPack::spmdApplyOpDumpOut() collect2: error: ld returned 1 exit status
A link using the bjam system works, so we suspect there is a magic flag to give to TriBITS, but don't know what that might be.
Let me know what additional information you need to help narrow this down. Such as running nm on libraries, looking at compile lines, etc.
Your Environment
- Trilinos SHA1 is 0df591fd (which is a bit older)
- GCC 7.2 & OpenMPI 1.10
- RHEL 6