Build issues

733 views
Skip to first unread message

Reuben Kraft

unread,
Jan 15, 2015, 1:42:43 PM1/15/15
to xyce-...@googlegroups.com, mhm...@gmail.com
Hello,

I am new to xyce. I compiled trilinos (in my home directory) and am now trying to compile xyce. I am trying to use cmake to set things up. so I went the xyce source dir. and:

mkdir build
cd build
ccmake ..

then I spent some time setting all the deps. from trilinos. and all seemed fine.  However when I run make I get the following error:
[rhk12@cyberstar build]$ make
/gpfs/apps/x86_64-rhel6/cmake/2.8.9/bin/cmake -H/gpfs/home/rhk12/group/code/n2a/Xyce-6.2 -B/gpfs/home/rhk12/group/code/n2a/Xyce-6.2/build --check-build-system CMakeFiles/Makefile.cmake 0
/gpfs/apps/x86_64-rhel6/cmake/2.8.9/bin/cmake -E cmake_progress_start /gpfs/home/rhk12/group/code/n2a/Xyce-6.2/build/CMakeFiles /gpfs/home/rhk12/group/code/n2a/Xyce-6.2/build/CMakeFiles/progress.marks
make -f CMakeFiles/Makefile2 all
make[1]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/build'
make -f CMakeFiles/TIMESTAMP_H.dir/build.make CMakeFiles/TIMESTAMP_H.dir/depend
make[2]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/build'
cd /gpfs/home/rhk12/group/code/n2a/Xyce-6.2/build && /gpfs/apps/x86_64-rhel6/cmake/2.8.9/bin/cmake -E cmake_depends "Unix Makefiles" /gpfs/home/rhk12/group/code/n2a/Xyce-6.2 /gpfs/home/rhk12/group/code/n2a/Xyce-6.2 /gpfs/home/rhk12/group/code/n2a/Xyce-6.2/build /gpfs/home/rhk12/group/code/n2a/Xyce-6.2/build /gpfs/home/rhk12/group/code/n2a/Xyce-6.2/build/CMakeFiles/TIMESTAMP_H.dir/DependInfo.cmake --color=
make[2]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/build'
make -f CMakeFiles/TIMESTAMP_H.dir/build.make CMakeFiles/TIMESTAMP_H.dir/build
make[2]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/build'
/usr/bin/touch /gpfs/home/rhk12/group/code/n2a/Xyce-6.2/src/UtilityPKG/timestamp.h.cmake
make[2]: /usr/bin/touch: Command not found
make[2]: *** [CMakeFiles/TIMESTAMP_H] Error 127
make[2]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/build'
make[1]: *** [CMakeFiles/TIMESTAMP_H.dir/all] Error 2
make[1]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/build'
make: *** [all] Error 2
[rhk12@cyberstar build]$ l


so it is not seeing touch. It turns out that touch is in /bin (without the /usr). I am not admin on the system so there is not much I can do about that. I am able to get past this by manually correcting the path in the file:
~/build/CMakeFiles/TIMESTAMP_H.dir/build.make

Although every time I run cmake it rewrites this file and I have to go back an correct it. Is there any way to make this change permanent?

I am also having trouble with the Xyce build seeing all the trilinos header files.  Everyone it has complained about is in
/gpfs/home/rhk12/group/code/trilinos-11.12.1-Source/MPI-INSTALL/include

so I have been going to the source code and manually entering the path.  I don't see a "trilinos_dir" option in the cmake option.  Is it possible to make the entire xyce build aware of my trilinos include directory?

Attached is my Cmakecache.txt file.

Thanks,
Reuben
CMakeCache.txt

Anon

unread,
Jan 15, 2015, 4:43:16 PM1/15/15
to xyce-...@googlegroups.com, mhm...@gmail.com
Reuben,

We actually do not encourage people to use the cmake build system. At the moment we use cmake only to create our Windows builds. Unfortunately, it has been fine-tuned for that purpose in a rather fragile way. I would suggest you try the Xyce "configure" script, as described in the Building Guide on the Xyce web site. If, for some reason, you are unable to use configure, we may be able to help you get cmake working on your system. However, it will likely be easier to troubleshoot configure problems over cmake problems.

The Xyce Team

Reuben Kraft

unread,
Jan 15, 2015, 6:59:59 PM1/15/15
to xyce-...@googlegroups.com, mhm...@gmail.com
Thanks, I understand.  I did try that but had issues as well. It is odd because I am getting complaints about the AMD library. I am working on a linux cluster. I was not able to find the amd library (I think it is provided by the acml  package and is called libacml.a ??) I may be wrong about that. So I used:


./configure LIBS=-L/gpfs/group/compbio/code/n2a/acml/gfortran64/lib/libacml.a

but got this error:

configure: error: FATAL: AMD library does not contain amd_valid and this is required by Trilinos.

Any help is much appreciated,
Thanks,
Reuben

xyce-users

unread,
Jan 16, 2015, 12:46:07 PM1/16/15
to xyce-...@googlegroups.com, mhm...@gmail.com
On Linux systems, the AMD library is usually supplied by the Suitesparse package (AMD is a sparse matrix algorithm unrelated to the math library package from the AMD chip manufacturer). It is simply libamd.a. Since Trilinos requires AMD, I'm guessing that is where the failure is occurring. I encourage you to look at the "Installing Prerequisite Libraries" section of the Building Guide (https://xyce.sandia.gov/documentation/BuildingGuide.html) and be sure everything is in place before compiling/installing Trilinos.

Some additional information from the "Building Trilinos for Serial Xyce" section (which is also applicable to parallel builds):
We have assumed that AMD and UMFPACK are installed in /usr/lib and their associated headers are installed in /usr/include/suitesparse, which is where they are installed by the suitesparse packages on 32-bit Linux systems. If they are installed elsewhere, modify the "-DAMD_LIBRARY_DIRS", "-D_TPL_AMD_INCLUDE_DIRS", "-DUMFPACK_LIBRARY_DIRS", and "-DTPL_UMFPACK_INCLUDE_DIRS" settings.
On 64-bit linux, the libraries are in /usr/lib64/ instead.

Hopefully this will help. If you continue to have issues, let us know.

The Xyce Team

Reuben Kraft

unread,
Jan 16, 2015, 4:35:04 PM1/16/15
to xyce-users, mehedi hasan
Yes, using Suitesparse and the correct library worked!  I am stuck on another issue.  Now I get;

checking for umfpack_di_solve in -lumfpack... no
configure: error: FATAL: UmfPack library does not contain umfpack_di_solve and this is required by Trilinos.

My configure command was: 
./configure LIBS="-L/gpfs/home/rhk12/group/code/SuiteSparse/AMD/Lib -L/gpfs/home/rhk12/group/code/trilinos-11.12.1-Source/MPI-INSTALL/lib -L/gpfs/home/rhk12/group/code/SuiteSparse/UMFPACK/Lib"

Do I need to do anything special when building Suitesparse to get the di_solve options?

Thanks
Reuben 

--
You received this message because you are subscribed to a topic in the Google Groups "xyce-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/xyce-users/lafy0aWg45c/unsubscribe.
To unsubscribe from this group and all its topics, send an email to xyce-users+...@googlegroups.com.
To post to this group, send email to xyce-...@googlegroups.com.
Visit this group at http://groups.google.com/group/xyce-users.
For more options, visit https://groups.google.com/d/optout.

xyce-users

unread,
Jan 16, 2015, 7:05:50 PM1/16/15
to xyce-...@googlegroups.com, mhm...@gmail.com
If the paths are all correct, then nothing special needs to be done. We saw a couple of things that may be going on. First, you are using LIBS instead of LDFLAGS. The Installation Guide page gives some examples with the LDFLAGS use. That is a simple change (use LDFLAGS instead of LIBS).

Second, it appears you are attempting to build the parallel version of Xyce (since you are specifying the MPI version of Trilinos). If so, you will need to pass additional parameters to configure, especially CPPFLAGS and the compilers (Xyce and all the libraries have to be built with the same compiler). Again, the Installation Guide page has example configure invocation scripts. The generic Linux one is:

/path/to/Xyce/configure \
CXXFLAGS="-O3" \
LDFLAGS="-L$HOME/XyceLibs/Parallel/lib" \
CPPFLAGS="-I/usr/include/suitesparse -I$HOME/XyceLibs/Parallel/include" \
--enable-mpi \
CXX=mpiCC \
CC=mpicc \
F77=mpif77
You will want to modify the above for your specialized paths. There is some commentary about non-standard paths in the Guide that may be of help.

As a side note, a typical SuiteSparse installation would have all the libraries in the same directory. All you would have to do in that case is specify "-L/path/to/SuiteSparse/lib", and that would capture both the AMD and UMFPACK libraries. I'm guessing you decided to just do a "make" and not a "make install" for SuiteSparse, hence the two directories.

Hopefully this will move you further along the path.

The Xyce Team

Reuben Kraft

unread,
Jan 17, 2015, 10:34:50 PM1/17/15
to xyce-users, mehedi hasan
Yes, those things helped and I am making progress. Thanks for the help. I did make install directories for both Suitesparse and trilinos:

/gpfs/home/rhk12/group/code/trilinos-11.12.1-Source/MPI-INSTALL

/gpfs/home/rhk12/group/code/SuiteSparse/Install-rk

I am now trying to get past this error:

checking Ifpack_CrsRiluk.h presence... yes
checking for Ifpack_CrsRiluk.h... yes
checking Amesos_Klu.h usability... yes
checking Amesos_Klu.h presence... yes
checking for Amesos_Klu.h... yes
checking Amesos_Umfpack.h usability... no
checking Amesos_Umfpack.h presence... no
checking for Amesos_Umfpack.h... no
configure: error: Sorry, Umfpack headers not found
[rhk12@cyberstar Xyce-6.2]$ 

umfpack lib exists in:

[rhk12@cyberstar lib]$ l /gpfs/home/rhk12/group/code/SuiteSparse/Install-rk/lib/libumfpack.*
-rw-r--r-- 1 rhk12 compbio 1520286 Jan 17 08:18 /gpfs/home/rhk12/group/code/SuiteSparse/Install-rk/lib/libumfpack.5.7.1.a
lrwxrwxrwx 1 rhk12 compbio      18 Jan 17 08:18 /gpfs/home/rhk12/group/code/SuiteSparse/Install-rk/lib/libumfpack.a -> libumfpack.5.7.1.a
[rhk12@cyberstar lib]$ 

I can't see how to build the Amesos_Umfpack in trilinos...should it be there?

Thanks,
Reuben

--

Reuben Kraft

unread,
Jan 18, 2015, 6:21:20 AM1/18/15
to xyce-users, mehedi hasan
Nevermind...I did not realize there is a UMFPACK and a UFMPACK...MF versus FM.  

Reuben Kraft

unread,
Jan 18, 2015, 9:19:19 AM1/18/15
to xyce-users, mehedi hasan
So I'm moving further in the build. I had this issue:
...
...
...
make[3]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/LinearAlgebraServicesPKG'
  CXX      N_LAS_BelosSolver.lo
  CXX      N_LAS_SimpleSolver.lo
  CXX      N_LAS_AmesosSolver.lo
  CXX      N_LAS_AztecOOSolver.lo
  CXX      N_LAS_Problem.lo
  CXX      N_LAS_MultiVector.lo
  CXX      N_LAS_Matrix.lo
  CXX      N_LAS_MOROperators.lo
  CXX      N_LAS_System.lo
  CXX      N_LAS_Builder.lo
  CXX      N_LAS_HBBuilder.lo
  CXX      N_LAS_Vector.lo
  CXX      N_LAS_TransformTool.lo
./src/N_LAS_TransformTool.C:70:36: fatal error: EpetraExt_AMD_CrsGraph.h: No such file or directory
 #include <EpetraExt_AMD_CrsGraph.h>
                                    ^
compilation terminated.
make[3]: *** [N_LAS_TransformTool.lo] Error 1
make[3]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/LinearAlgebraServicesPKG'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make: *** [all-recursive] Error 1

I cannot figure out which trilinos option turns this on. I see the file over in Suitesparse:

l ~/group/code/trilinos-11.12.1-Source/packages/epetraext/src/transform/EpetraExt_AMD_CrsGraph.h 
-rw-r--r-- 1 rhk12 compbio 3138 Oct  8 17:14 /gpfs/home/rhk12/group/code/trilinos-11.12.1-Source/packages/epetraext/src/transform/EpetraExt_AMD_CrsGraph.h
[rhk12@cyberstar build]$ 

so I put that directory in my xyce configure script:

/gpfs/home/rhk12/group/code/n2a/Xyce-6.2/configure \
--prefix=/gpfs/home/rhk12/group/code/n2a/Xyce-6.2/Install-rk  --enable-mpi\
CXXFLAGS="-O3" \
LDFLAGS="-L/gpfs/home/rhk12/group/code/trilinos-11.12.1-Source/MPI-INSTALL/lib \
-L/gpfs/home/rhk12/group/code/SuiteSparse/Install-rk/lib  \
-L/usr/global/fftw/3.3.3/intel/double/lib " \
CPPFLAGS="-I/gpfs/home/rhk12/group/code/SuiteSparse/Install-rk/include \
-I/gpfs/home/rhk12/group/code/trilinos-11.12.1-Source/MPI-INSTALL/include \
-I/usr/global/fftw/3.3.3/intel/double/include \
-I/gpfs/home/rhk12/group/code/trilinos-11.12.1-Source/packages/epetraext/src/transform " \
CXX=mpiCC \
CC=mpicc \
F77=mpif77

which gets rid of the issue. I am not sure if this is correct. Any suggestions.  It gets me past this issue but now I have this one with NOX:

  CXXLD    libLinearAlgebraServices.la
make[3]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/LinearAlgebraServicesPKG'
Making all in LoaderServicesPKG
make[3]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/LoaderServicesPKG'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/LoaderServicesPKG'
Making all in NonlinearSolverPKG
make[3]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/NonlinearSolverPKG'
  CXX      N_NLS_NOX_Vector.lo
In file included from ./src/N_NLS_NOX_Vector.C:53:0:
../../src/NonlinearSolverPKG/include/N_NLS_NOX_Vector.h:117:7: error: conflicting return type specified for 'virtual int N_NLS_NOX::Vector::length() const'
   int length() const;
       ^
In file included from ../../src/NonlinearSolverPKG/include/N_NLS_NOX_Vector.h:56:0,
                 from ./src/N_NLS_NOX_Vector.C:53:
/gpfs/home/rhk12/group/code/trilinos-11.12.1-Source/MPI-INSTALL/include/NOX_Abstract_Vector.H:295:26: error:   overriding 'virtual NOX::size_type NOX::Abstract::Vector::length() const'
   virtual NOX::size_type length() const = 0;
                          ^
make[3]: *** [N_NLS_NOX_Vector.lo] Error 1
make[3]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/NonlinearSolverPKG'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make: *** [all-recursive] Error 1


Any suggestions for this one?

Thanks,
Reuben 



Reuben Kraft

unread,
Jan 19, 2015, 3:49:57 PM1/19/15
to xyce-users, mehedi hasan
Hello,

I am still hung up with this error: 
Making all in NonlinearSolverPKG
make[3]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/NonlinearSolverPKG'
  CXX      N_NLS_Manager.lo
  CXX      N_NLS_TwoLevelNewton.lo
  CXX      N_NLS_NOX_Vector.lo
In file included from ./src/N_NLS_NOX_Vector.C:53:0:
../../src/NonlinearSolverPKG/include/N_NLS_NOX_Vector.h:117:7: error: conflicting return type specified for 'virtual int N_NLS_NOX::Vector::length() const'
   int length() const;
       ^
In file included from ../../src/NonlinearSolverPKG/include/N_NLS_NOX_Vector.h:56:0,
                 from ./src/N_NLS_NOX_Vector.C:53:
/gpfs/home/rhk12/group/code/trilinos-11.12.1-Source/MPI-INSTALL/include/NOX_Abstract_Vector.H:295:26: error:   overriding 'virtual NOX::size_type NOX::Abstract::Vector::length() const'
   virtual NOX::size_type length() const = 0;
                          ^
make[3]: *** [N_NLS_NOX_Vector.lo] Error 1
make[3]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/NonlinearSolverPKG'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make: *** [all-recursive] Error 1
[rhk12@cyberstar Xyce-6.2]$ 

Are there any suggestions how to get rid of this?

Thanks,
Reuben 

xyce-users

unread,
Jan 19, 2015, 4:13:06 PM1/19/15
to xyce-...@googlegroups.com, mhm...@gmail.com
Hi Reuben,

Unfortunately, the NOX nonlinear solver package changed their abstract interface in a way that is not backwards compatible in the Trilinos 11.12 release.
That means that Xyce 6.2 will only work with Trilinos 11.10, which you can download from this page:


Sorry for the inconvenience.

The Xyce Team


To unsubscribe from this group and all its topics, send an email to xyce-users+unsubscribe@googlegroups.com.

Reuben Kraft

unread,
Jan 19, 2015, 9:54:38 PM1/19/15
to xyce-users
Okay, I installed Trilinos 11.10 and that got rid of those issues.  Thanks.  I am now getting an issue that seems to be from Lapack, but I'm not really sure.  My blas library is in:

[rhk12@cyberstar BLAS]$ l /gpfs/home/rhk12/group/code/BLAS/blas_LINUX.a 
-rw-rw-r-- 1 rhk12 compbio 781994 Jan 19 19:13 /gpfs/home/rhk12/group/code/BLAS/blas_LINUX.a
[rhk12@cyberstar BLAS]$

and my lapack lib is in :
[rhk12@cyberstar lib]$ l /gpfs/home/rhk12/group/code/lapack-3.5.0/install-rk/lib/
total 13552
drwxrwsr-x 3 rhk12 compbio     8192 Jan 17 21:40 cmake
-rw-r--r-- 1 rhk12 compbio   801734 Jan 19 20:23 libblas.a
-rw-r--r-- 1 rhk12 compbio 12332000 Jan 19 20:26 liblapack.a
-rw-r--r-- 1 rhk12 compbio   703148 Jan 19 20:26 libtmglib.a
drwxrwsr-x 2 rhk12 compbio     8192 Jan 19 20:33 pkgconfig
[rhk12@cyberstar lib]$ 

Any suggestions how to get rid of this one?

...
...
...
...
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/test/XygraTestHarnesses'
make[4]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/test'
make[4]: Nothing to be done for `all-am'.
make[4]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/test'
make[3]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src/test'
make[3]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
  CCLD     libxyce.la
  CXXLD    Xyce
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::SequentialTsqr<int, double>::QR_produces_R_factor_with_nonnegative_diagonal() const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR14SequentialTsqrIidE46QR_produces_R_factor_with_nonnegative_diagonalEv[_ZNK4TSQR14SequentialTsqrIidE46QR_produces_R_factor_with_nonnegative_diagonalEv]+0x5): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR14SequentialTsqrIidE46QR_produces_R_factor_with_nonnegative_diagonalEv[_ZNK4TSQR14SequentialTsqrIidE46QR_produces_R_factor_with_nonnegative_diagonalEv]+0x1d): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::SequentialTsqr<int, double>::explicit_Q(int, int, double const*, int, std::vector<std::vector<double, std::allocator<double> >, std::allocator<std::vector<double, std::allocator<double> > > > const&, int, double*, int, bool) const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR14SequentialTsqrIidE10explicit_QEiiPKdiRKSt6vectorIS4_IdSaIdEESaIS6_EEiPdib[_ZNK4TSQR14SequentialTsqrIidE10explicit_QEiiPKdiRKSt6vectorIS4_IdSaIdEESaIS6_EEiPdib]+0x12a): undefined reference to `TSQR::ApplyType::NoTranspose'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `Teuchos::RCP<TSQR::MessengerBase<double> > TSQR::Epetra::makeTsqrMessenger<double>(Teuchos::RCP<Epetra_Comm const> const&)':
N_LAS_BelosSolver.C:(.text._ZN4TSQR6Epetra17makeTsqrMessengerIdEEN7Teuchos3RCPINS_13MessengerBaseIT_EEEERKNS3_IK11Epetra_CommEE[_ZN4TSQR6Epetra17makeTsqrMessengerIdEEN7Teuchos3RCPINS_13MessengerBaseIT_EEEERKNS3_IK11Epetra_CommEE]+0x88): undefined reference to `TSQR::MPI::MpiDatatype<double>::MpiDatatype()'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::SequentialTsqr<int, double>::Q_times_B(int, int, double*, int, double const*, int, bool) const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR14SequentialTsqrIidE9Q_times_BEiiPdiPKdib[_ZNK4TSQR14SequentialTsqrIidE9Q_times_BEiiPdiPKdib]+0x3f3): undefined reference to `TSQR::BLAS<int, double>::GEMM(char const*, char const*, int, int, int, double, double const*, int, double const*, int, double, double*, int)'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::NodeTsqr<int, double, std::vector<std::vector<double, std::allocator<double> >, std::allocator<std::vector<double, std::allocator<double> > > > >::reveal_R_rank(int, double*, int, double*, int, double) const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR8NodeTsqrIidSt6vectorIS1_IdSaIdEESaIS3_EEE13reveal_R_rankEiPdiS7_id[_ZNK4TSQR8NodeTsqrIidSt6vectorIS1_IdSaIdEESaIS3_EEE13reveal_R_rankEiPdiS7_id]+0x392): undefined reference to `TSQR::LAPACK<int, double>::GESVD(char const*, char const*, int, int, double*, int, double*, double*, int, double*, int, double*, int, double*, int*)'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR8NodeTsqrIidSt6vectorIS1_IdSaIdEESaIS3_EEE13reveal_R_rankEiPdiS7_id[_ZNK4TSQR8NodeTsqrIidSt6vectorIS1_IdSaIdEESaIS3_EEE13reveal_R_rankEiPdiS7_id]+0x488): undefined reference to `TSQR::LAPACK<int, double>::GESVD(char const*, char const*, int, int, double*, int, double*, double*, int, double*, int, double*, int, double*, int*)'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::CombineNative<int, double, false>::factor_inner(int, int, double*, int, double*, int, double*, double*) const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE12factor_innerEiiPdiS2_iS2_S2_[_ZNK4TSQR13CombineNativeIidLb0EE12factor_innerEiiPdiS2_iS2_S2_]+0x107): undefined reference to `TSQR::LAPACK<int, double>::LARFP(int, double&, double*, int, double&)'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE12factor_innerEiiPdiS2_iS2_S2_[_ZNK4TSQR13CombineNativeIidLb0EE12factor_innerEiiPdiS2_iS2_S2_]+0x15d): undefined reference to `TSQR::BLAS<int, double>::GEMV(char const*, int, int, double, double const*, int, double const*, int, double, double*, int)'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE12factor_innerEiiPdiS2_iS2_S2_[_ZNK4TSQR13CombineNativeIidLb0EE12factor_innerEiiPdiS2_iS2_S2_]+0x1f0): undefined reference to `TSQR::BLAS<int, double>::GER(int, int, double, double const*, int, double const*, int, double*, int)'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE12factor_innerEiiPdiS2_iS2_S2_[_ZNK4TSQR13CombineNativeIidLb0EE12factor_innerEiiPdiS2_iS2_S2_]+0x283): undefined reference to `TSQR::LAPACK<int, double>::LARFP(int, double&, double*, int, double&)'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::CombineNative<int, double, false>::apply_inner(TSQR::ApplyType const&, int, int, int, double const*, int, double const*, double*, int, double*, int, double*) const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE11apply_innerERKNS_9ApplyTypeEiiiPKdiS6_PdiS7_iS7_[_ZNK4TSQR13CombineNativeIidLb0EE11apply_innerERKNS_9ApplyTypeEiiiPKdiS6_PdiS7_iS7_]+0x3b): undefined reference to `TSQR::ApplyType::NoTranspose'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE11apply_innerERKNS_9ApplyTypeEiiiPKdiS6_PdiS7_iS7_[_ZNK4TSQR13CombineNativeIidLb0EE11apply_innerERKNS_9ApplyTypeEiiiPKdiS6_PdiS7_iS7_]+0x1cd): undefined reference to `TSQR::BLAS<int, double>::GER(int, int, double, double const*, int, double const*, int, double*, int)'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::SequentialTsqr<int, double>::apply(TSQR::ApplyType const&, int, int, double const*, int, std::vector<std::vector<double, std::allocator<double> >, std::allocator<std::vector<double, std::allocator<double> > > > const&, int, double*, int, bool) const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR14SequentialTsqrIidE5applyERKNS_9ApplyTypeEiiPKdiRKSt6vectorIS7_IdSaIdEESaIS9_EEiPdib[_ZNK4TSQR14SequentialTsqrIidE5applyERKNS_9ApplyTypeEiiPKdiRKSt6vectorIS7_IdSaIdEESaIS9_EEiPdib]+0x2ad): undefined reference to `TSQR::LAPACK<int, double>::ORM2R(char const*, char const*, int, int, int, double const*, int, double const*, double*, int, double*, int*)'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR14SequentialTsqrIidE5applyERKNS_9ApplyTypeEiiPKdiRKSt6vectorIS7_IdSaIdEESaIS9_EEiPdib[_ZNK4TSQR14SequentialTsqrIidE5applyERKNS_9ApplyTypeEiiPKdiRKSt6vectorIS7_IdSaIdEESaIS9_EEiPdib]+0x638): undefined reference to `TSQR::LAPACK<int, double>::ORM2R(char const*, char const*, int, int, int, double const*, int, double const*, double*, int, double*, int*)'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::CombineNative<int, double, false>::factor_pair(int, double*, int, double*, int, double*, double*) const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE11factor_pairEiPdiS2_iS2_S2_[_ZNK4TSQR13CombineNativeIidLb0EE11factor_pairEiPdiS2_iS2_S2_]+0x109): undefined reference to `TSQR::LAPACK<int, double>::LARFP(int, double&, double*, int, double&)'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE11factor_pairEiPdiS2_iS2_S2_[_ZNK4TSQR13CombineNativeIidLb0EE11factor_pairEiPdiS2_iS2_S2_]+0x15b): undefined reference to `TSQR::BLAS<int, double>::GEMV(char const*, int, int, double, double const*, int, double const*, int, double, double*, int)'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE11factor_pairEiPdiS2_iS2_S2_[_ZNK4TSQR13CombineNativeIidLb0EE11factor_pairEiPdiS2_iS2_S2_]+0x1ed): undefined reference to `TSQR::BLAS<int, double>::GER(int, int, double, double const*, int, double const*, int, double*, int)'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR13CombineNativeIidLb0EE11factor_pairEiPdiS2_iS2_S2_[_ZNK4TSQR13CombineNativeIidLb0EE11factor_pairEiPdiS2_iS2_S2_]+0x269): undefined reference to `TSQR::LAPACK<int, double>::LARFP(int, double&, double*, int, double&)'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::DistTsqrRB<int, double>::explicitQBroadcast(TSQR::MatView<int, double>, TSQR::MatView<int, double>, TSQR::MatView<int, double>, int, int, int, int, std::vector<TSQR::Matrix<int, double>, std::allocator<TSQR::Matrix<int, double> > >&, std::vector<std::vector<double, std::allocator<double> >, std::allocator<std::vector<double, std::allocator<double> > > >&)':
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x4d5): undefined reference to `TSQR::BLAS<int, double>::GER(int, int, double, double const*, int, double const*, int, double*, int)'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x528): undefined reference to `TSQR::StatTimeMonitor::StatTimeMonitor(Teuchos::Time&, TSQR::TimeStats&)'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x62f): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x6c3): undefined reference to `TSQR::StatTimeMonitor::StatTimeMonitor(Teuchos::Time&, TSQR::TimeStats&)'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x7c5): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x801): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE18explicitQBroadcastENS_7MatViewIidEES3_S3_iiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0xacd): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::SequentialTsqr<int, double>::factor(int, int, double*, int, double*, int, bool) const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR14SequentialTsqrIidE6factorEiiPdiS2_ib[_ZNK4TSQR14SequentialTsqrIidE6factorEiiPdiS2_ib]+0x1fb): undefined reference to `TSQR::LAPACK<int, double>::GEQR2(int, int, double*, int, double*, double*, int*)'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::DistTsqrRB<int, double>::factorReduce(TSQR::MatView<int, double>, int, int, int, std::vector<TSQR::Matrix<int, double>, std::allocator<TSQR::Matrix<int, double> > >&, std::vector<std::vector<double, std::allocator<double> >, std::allocator<std::vector<double, std::allocator<double> > > >&)':
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x157): undefined reference to `TSQR::StatTimeMonitor::StatTimeMonitor(Teuchos::Time&, TSQR::TimeStats&)'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x217): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x439): undefined reference to `TSQR::StatTimeMonitor::StatTimeMonitor(Teuchos::Time&, TSQR::TimeStats&)'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x4d9): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x782): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE[_ZN4TSQR10DistTsqrRBIidE12factorReduceENS_7MatViewIidEEiiiRSt6vectorINS_6MatrixIidEESaIS6_EERS4_IS4_IdSaIdEESaISB_EE]+0x983): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::DistTsqrRB<int, double>::factorExplicit(TSQR::MatView<int, double>, TSQR::MatView<int, double>, bool)':
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x2f): undefined reference to `TSQR::StatTimeMonitor::StatTimeMonitor(Teuchos::Time&, TSQR::TimeStats&)'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0xe8): undefined reference to `TSQR::StatTimeMonitor::StatTimeMonitor(Teuchos::Time&, TSQR::TimeStats&)'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x163): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x2b1): undefined reference to `TSQR::StatTimeMonitor::StatTimeMonitor(Teuchos::Time&, TSQR::TimeStats&)'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x3a9): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x466): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x511): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x689): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x7ca): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x7e8): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b[_ZN4TSQR10DistTsqrRBIidE14factorExplicitENS_7MatViewIidEES3_b]+0x9d1): undefined reference to `TSQR::StatTimeMonitor::~StatTimeMonitor()'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `void TSQR::Tsqr<int, double, TSQR::SequentialTsqr<int, double> >::factorExplicit<KokkosClassic::SerialNode>(KokkosClassic::MultiVector<double, KokkosClassic::SerialNode>&, KokkosClassic::MultiVector<double, KokkosClassic::SerialNode>&, Teuchos::SerialDenseMatrix<int, double>&, bool, bool)':
N_LAS_BelosSolver.C:(.text._ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb[_ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb]+0x369): undefined reference to `TSQR::ApplyType::NoTranspose'
N_LAS_BelosSolver.C:(.text._ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb[_ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb]+0x893): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb[_ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb]+0x8b0): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb[_ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb]+0x8cd): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
N_LAS_BelosSolver.C:(.text._ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb[_ZN4TSQR4TsqrIidNS_14SequentialTsqrIidEEE14factorExplicitIN13KokkosClassic10SerialNodeEEEvRNS5_11MultiVectorIdT_EESA_RN7Teuchos17SerialDenseMatrixIidEEbb]+0x8ea): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `Epetra::TsqrAdaptor::factorExplicit(Epetra_MultiVector&, Epetra_MultiVector&, Teuchos::SerialDenseMatrix<int, double>&, bool)':
N_LAS_BelosSolver.C:(.text._ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb[_ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb]+0xe9): undefined reference to `KokkosClassic::SerialNode::SerialNode(Teuchos::ParameterList&)'
N_LAS_BelosSolver.C:(.text._ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb[_ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb]+0x387): undefined reference to `KokkosClassic::SerialNode::SerialNode(Teuchos::ParameterList&)'
N_LAS_BelosSolver.C:(.text._ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb[_ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb]+0x8ac): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb[_ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb]+0x8b8): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb[_ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb]+0x8c4): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb[_ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb]+0x8d0): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb[_ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb]+0x8dc): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb[_ZN6Epetra11TsqrAdaptor14factorExplicitER18Epetra_MultiVectorS2_RN7Teuchos17SerialDenseMatrixIidEEb]+0x9c0): undefined reference to `KokkosClassic::SerialNode::SerialNode(Teuchos::ParameterList&)'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `Belos::TsqrOrthoManagerImpl<double, Epetra_MultiVector>::rawNormalize(Epetra_MultiVector&, Epetra_MultiVector&, Teuchos::SerialDenseMatrix<int, double>&)':
N_LAS_BelosSolver.C:(.text._ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE[_ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE]+0xf1): undefined reference to `KokkosClassic::SerialNode::SerialNode(Teuchos::ParameterList&)'
N_LAS_BelosSolver.C:(.text._ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE[_ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE]+0x7dd): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE[_ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE]+0x7e9): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE[_ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE]+0x7f5): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE[_ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE]+0x801): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE[_ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE]+0x80d): undefined reference to `TSQR::TimeStats::TimeStats()'
N_LAS_BelosSolver.C:(.text._ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE[_ZN5Belos20TsqrOrthoManagerImplId18Epetra_MultiVectorE12rawNormalizeERS1_S3_RN7Teuchos17SerialDenseMatrixIidEE]+0x8f8): undefined reference to `KokkosClassic::SerialNode::SerialNode(Teuchos::ParameterList&)'
./.libs/libxyce.a(N_LAS_TransformTool.o): In function `N_LAS_TransformTool::operator()(Xyce::Util::OptionBlock const&)':
N_LAS_TransformTool.C:(.text+0x11f4): undefined reference to `vtable for EpetraExt::CrsGraph_AMD'
/gpfs/home/rhk12/group/code/trilinos-11.10.2-Source/MPI-INSTALL/lib/libnox.a(NOX_Thyra_Group.C.o): In function `Thyra::ModelEvaluatorBase::OutArgs<double>::assert_supports(Thyra::ModelEvaluatorBase::EOutArgsDfDp, int, Thyra::ModelEvaluatorBase::Derivative<double> const&) const':
NOX_Thyra_Group.C:(.text._ZNK5Thyra18ModelEvaluatorBase7OutArgsIdE15assert_supportsENS0_12EOutArgsDfDpEiRKNS0_10DerivativeIdEE[_ZNK5Thyra18ModelEvaluatorBase7OutArgsIdE15assert_supportsENS0_12EOutArgsDfDpEiRKNS0_10DerivativeIdEE]+0x1c3): undefined reference to `Thyra::ModelEvaluatorBase::DerivativeSupport::description() const'
/gpfs/home/rhk12/group/code/trilinos-11.10.2-Source/MPI-INSTALL/lib/libnox.a(NOX_Thyra_Group.C.o): In function `Thyra::ModelEvaluatorBase::OutArgs<double>::assert_supports(Thyra::ModelEvaluatorBase::EOutArgsDgDx_dot, int, Thyra::ModelEvaluatorBase::Derivative<double> const&) const':
NOX_Thyra_Group.C:(.text._ZNK5Thyra18ModelEvaluatorBase7OutArgsIdE15assert_supportsENS0_16EOutArgsDgDx_dotEiRKNS0_10DerivativeIdEE[_ZNK5Thyra18ModelEvaluatorBase7OutArgsIdE15assert_supportsENS0_16EOutArgsDgDx_dotEiRKNS0_10DerivativeIdEE]+0x1c3): undefined reference to `Thyra::ModelEvaluatorBase::DerivativeSupport::description() const'
/gpfs/home/rhk12/group/code/trilinos-11.10.2-Source/MPI-INSTALL/lib/libnox.a(NOX_Thyra_Group.C.o): In function `Thyra::ModelEvaluatorBase::OutArgs<double>::assert_supports(Thyra::ModelEvaluatorBase::EOutArgsDgDx, int, Thyra::ModelEvaluatorBase::Derivative<double> const&) const':
NOX_Thyra_Group.C:(.text._ZNK5Thyra18ModelEvaluatorBase7OutArgsIdE15assert_supportsENS0_12EOutArgsDgDxEiRKNS0_10DerivativeIdEE[_ZNK5Thyra18ModelEvaluatorBase7OutArgsIdE15assert_supportsENS0_12EOutArgsDgDxEiRKNS0_10DerivativeIdEE]+0x1c3): undefined reference to `Thyra::ModelEvaluatorBase::DerivativeSupport::description() const'
/gpfs/home/rhk12/group/code/trilinos-11.10.2-Source/MPI-INSTALL/lib/libnox.a(NOX_Thyra_Group.C.o): In function `Thyra::ModelEvaluatorBase::OutArgs<double>::assert_supports(Thyra::ModelEvaluatorBase::EOutArgsDgDp, int, int, Thyra::ModelEvaluatorBase::Derivative<double> const&) const':
NOX_Thyra_Group.C:(.text._ZNK5Thyra18ModelEvaluatorBase7OutArgsIdE15assert_supportsENS0_12EOutArgsDgDpEiiRKNS0_10DerivativeIdEE[_ZNK5Thyra18ModelEvaluatorBase7OutArgsIdE15assert_supportsENS0_12EOutArgsDgDpEiiRKNS0_10DerivativeIdEE]+0x1c3): undefined reference to `Thyra::ModelEvaluatorBase::DerivativeSupport::description() const'
collect2: error: ld returned 1 exit status
make[3]: *** [Xyce] Error 1
make[3]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make: *** [all-recursive] Error 1
[rhk12@cyberstar Xyce-6.2]$ 
To unsubscribe from this group and all its topics, send an email to xyce-users+...@googlegroups.com.

xyce-users

unread,
Jan 20, 2015, 12:38:30 PM1/20/15
to xyce-...@googlegroups.com
Hi Rueben,

In the example cmake scripts for Trilinos, that can be found on the Xyce webpage


there is an option that turns off all "optional" packages in Trilinos:

-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \
Trilinos has many additional packages and features that Xyce doesn't use or include in building or linking.  Thus, if you don't use this configure option, there will undoubtedly be compile time issues like those you are seeing.  Please add this cmake option and this build issue will go away.

Regards,
The Xyce Team

...

Reuben Kraft

unread,
Jan 20, 2015, 1:40:28 PM1/20/15
to xyce-users
Hello,

Does anyone know if the errors above are dealing with my Lapack build or with trilinos build?  If it is trilinos, is it the NOX, Belos,  or Teuchos (or other) package. It seems like Xyce can see some library, but I'm not sure which....

Thank,
Reuben 

xyce-users

unread,
Jan 20, 2015, 3:09:57 PM1/20/15
to xyce-...@googlegroups.com
Hi Reuben,

The issue is that the Trilinos cmake script does not seem to turn off optional packages, like Kokkos and Thyra.  Like the example cmake scripts on the Xyce webpage, you need to add this:

-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \
Otherwise, all optional packages from Trilinos will be built, which will cause compile/link errors in Xyce.

Regards,
The Xyce Team

...

Reuben Kraft

unread,
Jan 20, 2015, 8:52:35 PM1/20/15
to xyce-users
I am stilling having this issue. I added that flag you suggested. I also removed the entire trilinos build and recompiled it. It seem like it cannot access some library?  Any more debugging suggestions?  My xyce config.log file is attached.

Thanks,
Reuben 


make[3]: Entering directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
  CCLD     libxyce.la
  CXX      Xyce.o
  CXXLD    Xyce./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::SequentialTsqr<int, double>::QR_produces_R_factor_with_nonnegative_diagonal() const':
N_LAS_BelosSolver.C:(.text._ZNK4TSQR14SequentialTsqrIidE46QR_produces_R_factor_with_nonnegative_diagonalEv[_ZNK4TSQR14SequentialTsqrIidE46QR_produces_R_factor_with_nonnegative_diagonalEv]+0x5): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
N_LAS_BelosSolver.C:(.text._ZNK4TSQR14SequentialTsqrIidE46QR_produces_R_factor_with_nonnegative_diagonalEv[_ZNK4TSQR14SequentialTsqrIidE46QR_produces_R_factor_with_nonnegative_diagonalEv]+0x1d): undefined reference to `TSQR::LAPACK<int, double>::QR_produces_R_factor_with_nonnegative_diagonal()'
./.libs/libxyce.a(N_LAS_BelosSolver.o): In function `TSQR::SequentialTsqr<int, double>::explicit_Q(int, int, double const*, int, std::vector<std::vector<double, std::allocator<double> >, std::allocator<std::vector<double, std::allocator<double> > > > const&, int, double*, int, bool) const':
...
...
...

--
config.log

xyce-users

unread,
Jan 21, 2015, 1:29:12 PM1/21/15
to xyce-...@googlegroups.com
Hi Reuben,

Could you also post your Trilinos cmake configure file as well?

Thanks,
The Xyce Team
...

Reuben Kraft

unread,
Jan 21, 2015, 1:33:21 PM1/21/15
to xyce-users
Here you go.

Thanks,
Reuben


--
CMakeCache.txt
do-configure

xyce-users

unread,
Jan 21, 2015, 4:37:06 PM1/21/15
to xyce-...@googlegroups.com
Hi Reuben,

Sorry, I meant the line you pass to cmake to enable or disable packages in Trilinos.  It's easier to read than the CMakeCache.txt file.  I want to try and replicate your error.

Thanks,
The Xyce Team
...

Reuben Kraft

unread,
Jan 21, 2015, 7:39:04 PM1/21/15
to xyce-users
Hello,

I just run the ./do-configure script which I also attached to the previous email. Is that what you need?

Thanks,
Reuben 


--

xyce-users

unread,
Jan 22, 2015, 2:17:37 PM1/22/15
to xyce-...@googlegroups.com
Hi Reuben,

Yes, sorry I only saw the CMakeCache.txt file and not the do-configure script.

Ok, now I see the problem.  On the Xyce website, the example configure script for Trilinos is very explicit about which packages are necessary for Xyce.  Many of the Trilinos packages are not used at all, and therefore unnecessary to build.  I'm not sure where your configure script came from, but there are a couple packages that need to be removed from it.  In particular, remove these lines:

-D Trilinos_ENABLE_Tpetra:BOOL=ON\

-D Trilinos_ENABLE_Amesos2:BOOL=ON\

-D TPL_ENABLE_Cholmod:BOOL=ON \

-D TPL_Cholmod_LIBRARIES:FILEPATH="/gpfs/home/rhk12/group/code/SuiteSparse/Install-rk/lib" \

-D TPL_Cholmod_INCLUDE_DIRS:FILEPATH="/gpfs/home/rhk12/group/code/SuiteSparse/Install-rk/include" \

-D Trilinos_ENABLE_Triutils:BOOL=ON\

-D TPL_ENABLE_UFMPACK:BOOL=ON \ [misspelling]

-D EpetraExt_BUILD_ABC:BOOL=ON\

-D TPL_ENABLE_HDF5:BOOL=ON\

-D TPL_HDF5_LIBRARIES:FILEPATH="/gpfs/home/rhk12/group/code/hdf5-1.8.14/install-rk/lib"\

-D TPL_HDF5_INCLUDE_DIRS:FILEPATH="/gpfs/home/rhk12/group/code/hdf5-1.8.14/install-rk/include"\

-D TPL_ENABLE_METIS:BOOL=ON\

-D TPL_METIS_LIBRARIES:FILEPATH="/gpfs/home/rhk12/group/code/metis-5.1.0/install-rk/lib" \

-D TPL_METIS_INCLUDE_DIRS:FILEPATH="/gpfs/home/rhk12/group/code/metis-5.1.0/install-rk/include" \


While Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF does not turn on optional packages, if you enable a package for which there is an optional dependency from another package Trilinos will kindly build the optionally dependent code for you.  This causes a problem at build/link time with Xyce.

Hope this helps.

Regards,
The Xyce Team
...

Reuben Kraft

unread,
Jan 22, 2015, 5:01:51 PM1/22/15
to xyce-users
Thanks for that advice. Looks like it helped, but I still have this one error:

./.libs/libxyce.a(N_LAS_TransformTool.o): In function `N_LAS_TransformTool::operator()(Xyce::Util::OptionBlock const&)':
N_LAS_TransformTool.C:(.text+0x11f4): undefined reference to `vtable for EpetraExt::CrsGraph_AMD'
collect2: error: ld returned 1 exit status
make[3]: *** [Xyce] Error 1
make[3]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/gpfs/group1/c/compbio/code/n2a/Xyce-6.2/src'
make: *** [all-recursive] Error 1
[rhk12@cyberstar Xyce-6.2]$ 


Any suggestions? Attached are my trilinos do-configure and my xyce config.log

Thanks,
Reuben 


--
do-configure
config.log

Reuben Kraft

unread,
Jan 22, 2015, 5:27:36 PM1/22/15
to xyce-users
Never mind. I need to also remove the EpetraExt_Tranform option from my trilinos do-configure file.

Xyce looks like it built!  Thanks for all your help!
Reuben

Reply all
Reply to author
Forward
0 new messages