amesos2 tpetra solver driver link error (undefined references)
Created by: rrdrake
I am getting the following link error (new as of a week or two). This is using GCC 4.9.
/projects/alegra/mpi/ompi1.8.3_gcc492/bin/mpiCC -std=c++11 -O2 -funroll-loops -DCODE_MP -DOMPI_SKIP_MPICXX -DNDEBUG -std=c++11 -Xlinker -rpath -Xlinker /projects/alegra/gcc492/lib64 -L/projects/alegra/gcc492/lib64 -lgfortran CMakeFiles/Stratimikos_test_single_amesos2_tpetra_solver_driver.dir/test_single_amesos2_tpetra_solver_driver.cpp.o CMakeFiles/Stratimikos_test_single_amesos2_tpetra_solver_driver.dir/test_single_amesos2_tpetra_solver.cpp.o -o Stratimikos_test_single_amesos2_tpetra_solver_driver.exe -rdynamic ../src/libstratimikosamesos2.a ../../aztecoo/src/libstratimikosaztecoo.a ../../amesos/src/libstratimikosamesos.a ../../ml/src/libstratimikosml.a ../../ifpack/src/libstratimikosifpack.a ../../../../ifpack2/adapters/libifpack2-adapters.a ../../../../ifpack2/src/libifpack2.a ../../../../thyra/adapters/epetra/src/libthyraepetra.a ../../../../triutils/src/libtriutils.a ../../../../../liblast_lib.a ../../../../ml/src/libml.a ../../../../galeri/src-xpetra/libgaleri-xpetra.a ../../../../galeri/src-epetra/libgaleri-epetra.a ../../../../isorropia/src/libisorropia.a ../../../../ifpack/src/libifpack.a ../../../../amesos/src/libamesos.a /projects/alegra/TPL/superludist/2.0/lib/gnu49_opt/libsuperludist.a ../../../../amesos2/src/libamesos2.a ../../../../common/auxiliarySoftware/SuiteSparse/src/libtrilinosss.a ../../../../belos/tpetra/src/libbelostpetra.a ../../../../belos/epetra/src/libbelosepetra.a ../../../../belos/src/libbelos.a ../../../../aztecoo/src/libaztecoo.a /projects/alegra/TPL/y12m/1.0/lib/gnu49_opt/liby12m.a ../../../../zoltan2/src/libzoltan2.a ../../../../zoltan/src/libzoltan.a /projects/alegra/TPL/parmetis/4.0.3-n1/inst_gnu49_opt/lib/libparmetis.a /projects/alegra/TPL/parmetis/4.0.3-n1/inst_gnu49_opt/lib/libmetis.a -lm ../../../../xpetra/sup/libxpetra-sup.a ../../../../xpetra/src/libxpetra.a ../../../../thyra/adapters/tpetra/src/libthyratpetra.a ../../../../thyra/adapters/epetraext/src/libthyraepetraext.a ../../../../thyra/adapters/epetra/src/libthyraepetra.a ../../../../thyra/core/src/libthyracore.a ../../../../rtop/src/librtop.a ../../../../epetraext/src/libepetraext.a ../../../../triutils/src/libtriutils.a /projects/alegra/TPL/umfpack/5.1/inst_gnu49_opt/lib/libumfpack.a /projects/alegra/TPL/umfpack/5.1/inst_gnu49_opt/lib/libamd.a ../../../../tpetra/core/ext/libtpetraext.a ../../../../tpetra/core/inout/libtpetrainout.a ../../../../tpetra/core/src/libtpetra.a ../../../../epetra/src/libepetra.a ../../../../tpetra/tsqr/src/libkokkostsqr.a ../../../../tpetra/classic/LinAlg/libtpetraclassiclinalg.a ../../../../tpetra/classic/NodeAPI/libtpetraclassicnodeapi.a ../../../../tpetra/classic/src/libtpetraclassic.a ../../../../kokkos-kernels/src/libkokkoskernels.a ../../../../kokkos/algorithms/src/libkokkosalgorithms.a ../../../../kokkos/containers/src/libkokkoscontainers.a ../../../../teuchos/kokkoscomm/src/libteuchoskokkoscomm.a ../../../../teuchos/kokkoscompat/src/libteuchoskokkoscompat.a ../../../../teuchos/remainder/src/libteuchosremainder.a ../../../../teuchos/numerics/src/libteuchosnumerics.a -L/projects/alegra/TPL/lapackblas/3.0-n1/lib/gnu49_opt -llapack -L/projects/alegra/TPL/lapackblas/3.0-n1/lib/gnu49_opt -lblas ../../../../teuchos/comm/src/libteuchoscomm.a ../../../../teuchos/parameterlist/src/libteuchosparameterlist.a ../../../../teuchos/parser/src/libteuchosparser.a ../../../../teuchos/core/src/libteuchoscore.a ../../../../kokkos/core/src/libkokkoscore.a /usr/lib64/libdl.so -Xlinker -rpath -Xlinker /projects/alegra/gcc492/lib64 -L/projects/alegra/gcc492/lib64 -lgfortran -lquadmath
../src/libstratimikosamesos2.a(Thyra_Amesos2LinearOpWithSolveFactory.cpp.o): In function `Teuchos::RCP<Amesos2::Solver<Tpetra::CrsMatrix<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false>, Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> > > Amesos2::create<Tpetra::CrsMatrix<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false>, Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> >(std::string, Teuchos::RCP<Tpetra::CrsMatrix<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> const>, Teuchos::RCP<Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> >, Teuchos::RCP<Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> const>)':
Thyra_Amesos2LinearOpWithSolveFactory.cpp:(.text._ZN7Amesos26createIN6Tpetra9CrsMatrixIfiiN6Kokkos6Compat23KokkosDeviceWrapperNodeINS3_6SerialENS3_9HostSpaceEEELb0EEENS1_11MultiVectorIfiiS8_Lb0EEEEEN7Teuchos3RCPINS_6SolverIT_T0_EEEESsNSD_IKSF_EENSD_ISG_EENSD_IKSG_EE[_ZN7Amesos26createIN6Tpetra9CrsMatrixIfiiN6Kokkos6Compat23KokkosDeviceWrapperNodeINS3_6SerialENS3_9HostSpaceEEELb0EEENS1_11MultiVectorIfiiS8_Lb0EEEEEN7Teuchos3RCPINS_6SolverIT_T0_EEEESsNSD_IKSF_EENSD_ISG_EENSD_IKSG_EE]+0x2ca): undefined reference to `Amesos2::Basker<Tpetra::CrsMatrix<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false>, Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> >::Basker(Teuchos::RCP<Tpetra::CrsMatrix<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> const>, Teuchos::RCP<Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> >, Teuchos::RCP<Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> const>)'
Thyra_Amesos2LinearOpWithSolveFactory.cpp:(.text._ZN7Amesos26createIN6Tpetra9CrsMatrixIfiiN6Kokkos6Compat23KokkosDeviceWrapperNodeINS3_6SerialENS3_9HostSpaceEEELb0EEENS1_11MultiVectorIfiiS8_Lb0EEEEEN7Teuchos3RCPINS_6SolverIT_T0_EEEESsNSD_IKSF_EENSD_ISG_EENSD_IKSG_EE[_ZN7Amesos26createIN6Tpetra9CrsMatrixIfiiN6Kokkos6Compat23KokkosDeviceWrapperNodeINS3_6SerialENS3_9HostSpaceEEELb0EEENS1_11MultiVectorIfiiS8_Lb0EEEEEN7Teuchos3RCPINS_6SolverIT_T0_EEEESsNSD_IKSF_EENSD_ISG_EENSD_IKSG_EE]+0x67a): undefined reference to `Amesos2::KLU2<Tpetra::CrsMatrix<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false>, Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> >::KLU2(Teuchos::RCP<Tpetra::CrsMatrix<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> const>, Teuchos::RCP<Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> >, Teuchos::RCP<Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> const>)'
Thyra_Amesos2LinearOpWithSolveFactory.cpp:(.text._ZN7Amesos26createIN6Tpetra9CrsMatrixIfiiN6Kokkos6Compat23KokkosDeviceWrapperNodeINS3_6SerialENS3_9HostSpaceEEELb0EEENS1_11MultiVectorIfiiS8_Lb0EEEEEN7Teuchos3RCPINS_6SolverIT_T0_EEEESsNSD_IKSF_EENSD_ISG_EENSD_IKSG_EE[_ZN7Amesos26createIN6Tpetra9CrsMatrixIfiiN6Kokkos6Compat23KokkosDeviceWrapperNodeINS3_6SerialENS3_9HostSpaceEEELb0EEENS1_11MultiVectorIfiiS8_Lb0EEEEEN7Teuchos3RCPINS_6SolverIT_T0_EEEESsNSD_IKSF_EENSD_ISG_EENSD_IKSG_EE]+0xa6a): undefined reference to `Amesos2::Umfpack<Tpetra::CrsMatrix<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false>, Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> >::Umfpack(Teuchos::RCP<Tpetra::CrsMatrix<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> const>, Teuchos::RCP<Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> >, Teuchos::RCP<Tpetra::MultiVector<float, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial, Kokkos::HostSpace>, false> const>)'
collect2: error: ld returned 1 exit status
gmake[2]: *** [packages/stratimikos/adapters/amesos2/test/Stratimikos_test_single_amesos2_tpetra_solver_driver.exe] Error 1
gmake[2]: Leaving directory `/scratch/rrdrake/devbnb/TPL/trilinos/devel/build/gnu49_opt'
gmake[1]: *** [packages/stratimikos/adapters/amesos2/test/CMakeFiles/Stratimikos_test_single_amesos2_tpetra_solver_driver.dir/all] Error 2
Here is my cmake command line:
cmake
-D Trilinos_SKIP_FORTRANCINTERFACE_VERIFY_TEST:BOOL=ON
-D CMAKE_INSTALL_PREFIX:PATH="/scratch/rrdrake/devbnb/TPL/trilinos/devel/build/gnu49_opt/inst"
-D Trilinos_ENABLE_ALL_PACKAGES:BOOL=OFF
-D Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL=OFF
-D Trilinos_ENABLE_TESTS:BOOL=OFF
-D Trilinos_ENABLE_Gtest:BOOL=OFF
-D CMAKE_CXX_COMPILER:FILEPATH="/projects/alegra/mpi/ompi1.8.3_gcc492/bin/mpiCC"
-D CMAKE_C_COMPILER:FILEPATH="/projects/alegra/mpi/ompi1.8.3_gcc492/bin/mpicc"
-D CMAKE_Fortran_COMPILER:FILEPATH="gfortran"
-DCMAKE_BUILD_TYPE=None
-D Trilinos_ENABLE_STRONG_C_COMPILE_WARNINGS:BOOL=OFF
-D Trilinos_ENABLE_STRONG_CXX_COMPILE_WARNINGS:BOOL=OFF
-D F77_FUNC_:STRING="(name,NAME) name ## _"
-D F77_FUNC:STRING="(name,NAME) name ##_"
-D CMAKE_C_FLAGS:STRING="-O2 -funroll-loops
-DCODE_MP
-DOMPI_SKIP_MPICXX
-DNDEBUG"
-D CMAKE_CXX_FLAGS:STRING="-std=c++11 -O2 -funroll-loops
-DCODE_MP
-DOMPI_SKIP_MPICXX
-DNDEBUG"
-D CMAKE_Fortran_FLAGS:STRING="-O2 -funroll-loops
-DCODE_MP
-DOMPI_SKIP_MPICXX
-DNDEBUG"
-D CMAKE_EXE_LINKER_FLAGS:STRING="-Xlinker -rpath -Xlinker /projects/alegra/gcc492/lib64 -L/projects/alegra/gcc492/lib64 -lgfortran"
-D Trilinos_EXTRA_LINK_FLAGS:STRING="-Xlinker -rpath -Xlinker /projects/alegra/gcc492/lib64 -L/projects/alegra/gcc492/lib64 -lgfortran"
-D CMAKE_Fortran_IMPLICIT_LINK_LIBRARIES="-Xlinker -rpath -Xlinker /projects/alegra/gcc492/lib64 -L/projects/alegra/gcc492/lib64 -lgfortran"
-DCMAKE_AR:STRING="/scratch/rrdrake/devbnb/TPL/trilinos/devel/build/gnu49_opt/ar_dispatch"
-D TPL_ENABLE_MPI:BOOL=ON
-D Trilinos_ENABLE_EXPLICIT_INSTANTIATION=ON
-D Trilinos_ENABLE_Teuchos:BOOL=ON
-D Trilinos_ENABLE_Triutils:BOOL=ON
-D Trilinos_ENABLE_Epetra:BOOL=ON
-D Trilinos_ENABLE_EpetraExt:BOOL=ON
-D Trilinos_ENABLE_Tpetra:BOOL=ON
-D Teuchos_ENABLE_COMPLEX:BOOL=ON
-D Teuchos_ENABLE_FLOAT:BOOL=ON
-D Teuchos_ENABLE_STACKTRACE:BOOL=OFF
-D EpetraExt_BUILD_BTF:BOOL=OFF
-D EpetraExt_BUILD_EXPERIMENTAL:BOOL=ON
-D EpetraExt_BUILD_TRANSFORM:BOOL=ON
-D EpetraExt_BUILD_GRAPH_REORDERINGS=ON
-D Trilinos_ENABLE_AztecOO:BOOL=ON
-D AztecOO_ENABLE_AZLU:BOOL=ON
-D Trilinos_ENABLE_Amesos:BOOL=ON
-D Amesos_ENABLE_SuperLUDist:BOOL=ON
-D Amesos_ENABLE_KLU:BOOL=ON
-D Amesos_ENABLE_UMFPACK:BOOL=ON
-D Amesos2_ENABLE_KLU2:BOOL=ON
-D Amesos2_ENABLE_SuperLUDist:BOOL=OFF
-D Amesos2_ENABLE_Basker:BOOL=ON
-D Trilinos_ENABLE_Amesos2:BOOL=ON
-D Trilinos_ENABLE_Anasazi:BOOL=ON
-D Trilinos_ENABLE_MueLu:BOOL=ON
-D Trilinos_ENABLE_ML:BOOL=ON
-D Trilinos_ENABLE_TrilinosCouplings:BOOL=ON
-D ML_ENABLE_Enrich:BOOL=OFF
-D Trilinos_ENABLE_Ifpack:BOOL=ON
-D Trilinos_ENABLE_Ifpack2:BOOL=ON
-D Trilinos_ENABLE_NOX:BOOL=ON
-D NOX_BUILD_PRERELEASE:BOOL=OFF
-D NOX_ENABLE_LOCA:BOOL=ON
-D Trilinos_ENABLE_Piro:BOOL=ON
-D Trilinos_ENABLE_Zoltan:BOOL=ON
-D Trilinos_ENABLE_Zoltan2:BOOL=ON
-D Trilinos_ENABLE_Isorropia:BOOL=ON
-D Trilinos_ENABLE_Pamgen:BOOL=ON
-D Trilinos_ENABLE_Belos:BOOL=ON
-D NOX_ENABLE_ABSTRACT_IMPLEMENTATION_EPETRA:BOOL=ON
-D NOX_ENABLE_ABSTRACT_IMPLEMENTATION_LAPACK:BOOL=ON
-D Trilinos_ENABLE_Shards:BOOL=ON
-D Trilinos_ENABLE_Rythmos:BOOL=ON
-D Trilinos_ENABLE_Thyra:BOOL=ON
-D Trilinos_ENABLE_Stratimikos:BOOL=ON
-D Trilinos_ENABLE_Sacado:BOOL=ON
-D Trilinos_ENABLE_Intrepid:BOOL=ON
-D Trilinos_ENABLE_MiniTensor:BOOL=ON
-D Trilinos_ENABLE_KokkosCore:BOOL=ON
-D TPL_ENABLE_BLAS:BOOL=ON
-D TPL_ENABLE_LAPACK:BOOL=ON
-D TPL_BLAS_LIBRARIES:STRING="-L/projects/alegra/TPL/lapackblas/3.0-n1/lib/gnu49_opt -lblas"
-D TPL_LAPACK_LIBRARIES:STRING="-L/projects/alegra/TPL/lapackblas/3.0-n1/lib/gnu49_opt -llapack"
-D TPL_ENABLE_y12m:BOOL=ON
-D y12m_LIBRARY_DIRS:FILEPATH="/projects/alegra/TPL/y12m/1.0/lib/gnu49_opt"
-D TPL_ENABLE_SuperLUDist:BOOL=ON
-D SuperLUDist_INCLUDE_DIRS:FILEPATH="/projects/alegra/TPL/superludist/2.0/include"
-D SuperLUDist_LIBRARY_DIRS:FILEPATH="/projects/alegra/TPL/superludist/2.0/lib/gnu49_opt"
-D TPL_ENABLE_UMFPACK:BOOL=ON
-D UMFPACK_INCLUDE_DIRS:FILEPATH="/projects/alegra/TPL/umfpack/5.1/inst_gnu49_opt/include"
-D UMFPACK_LIBRARY_DIRS:FILEPATH="/projects/alegra/TPL/umfpack/5.1/inst_gnu49_opt/lib"
-D TPL_ENABLE_AMD:BOOL=ON
-D AMD_INCLUDE_DIRS:FILEPATH="/projects/alegra/TPL/umfpack/5.1/inst_gnu49_opt/include"
-D AMD_LIBRARY_DIRS:FILEPATH="/projects/alegra/TPL/umfpack/5.1/inst_gnu49_opt/lib"
-D TPL_ENABLE_ParMETIS:BOOL=ON
-D ParMETIS_INCLUDE_DIRS:FILEPATH="/projects/alegra/TPL/parmetis/4.0.3-n1/inst_gnu49_opt/include"
-D ParMETIS_LIBRARY_DIRS:FILEPATH="/projects/alegra/TPL/parmetis/4.0.3-n1/inst_gnu49_opt/lib"
"-DBoost_INCLUDE_DIRS=/projects/alegra/TPL/boost/1.54b/include"
"-DBoost_LIBRARY_DIRS=/projects/alegra/TPL/boost/1.54b/lib/gnu49_opt"
-DBoost_NO_SYSTEM_PATHS:BOOL=ON
-DBoost_NO_BOOST_CMAKE:BOOL=ON
-D CMAKE_VERBOSE_MAKEFILE:BOOL=ON
-D Trilinos_VERBOSE_CONFIGURE:BOOL=ON /scratch/rrdrake/devbnb/TPL/trilinos/devel/TrilinosGIT/Trilinos
Has there been a change that requires new options to be specified to cmake?
@trilinos/amesos2