Linking Problems when compiling NWChem 6.3


Click here for full thread
Clicked A Few Times
I get the following undefined errors at linking when compiling NWChem 6.3

gfortran -L/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64 -L/home/doudou/Programs/nwchem-6.3-src.2013-05-17/src/tools/install/lib -o /home/doudou/Programs/nwchem-6.3-src.2013-05-17/bin/LINUX64/nwchem nwchem.o stubs.o -lnwctask -lccsd -lmcscf -lselci -lmp2 -lmoints -lstepper -ldriver -loptim -lnwdft -lgradients -lcphf -lesp -lddscf -ldangchang -lguess -lhessian -lvib -lnwcutil -lrimp2 -lproperty -lnwints -lprepar -lnwmd -lnwpw -lofpw -lpaw -lpspw -lband -lnwpwlib -lnwxc -lcafe -lspace -lanalyze -lqhop -lpfft -ldplot -ldrdy -lvscf -lqmmm -lqmd -letrans -lpspw -ltce -lbq -lcons -lperfm -ldntmc -lccca -lnwcutil -lga -larmci -lpeigs -lperfm -lcons -lbq -lnwcutil -L/opt/intel/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_cdft_core -lmkl_gf_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -ldl -lpthread -lm -llapack -lblas -L/home/doudou/Programs/OpenMPI/lib -lmpi_f90 -lmpi_f77 -lmpi -lpthread -L/usr/local/cuda/lib64 -L/usr/local/cuda/lib -lcudart
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(hybrid.o):hybrid.c:function check_device_: error: undefined reference to 'armci_me'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(hybrid.o):hybrid.c:function check_device_: error: undefined reference to 'armci_master'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(hybrid.o):hybrid.c:function device_init_: error: undefined reference to 'armci_me'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(hybrid.o):hybrid.c:function device_init_: error: undefined reference to 'armci_master'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_iterator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >::operator++(): error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_const_iterator<void*>::operator++(): error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base const*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, void*, std::_Identity<void*>, std::less<void*>, std::allocator<void*> >::_M_insert_(std::_Rb_tree_node_base const*, std::_Rb_tree_node_base const*, void* const&): error: undefined reference to 'std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_iterator<void*>::operator--(): error: undefined reference to 'std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, std::pair<void* const, int>, std::_Select1st<std::pair<void* const, int> >, std::less<void*>, std::allocator<std::pair<void* const, int> > >::_M_insert_(std::_Rb_tree_node_base const*, std::_Rb_tree_node_base const*, std::pair<void* const, int> const&): error: undefined reference to 'std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_const_iterator<std::pair<void* const, int> >::operator--(): error: undefined reference to 'std::_Rb_tree_decrement(std::_Rb_tree_node_base const*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_const_iterator<std::pair<void* const, int> >::operator++(): error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base const*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<int, std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > >, std::_Select1st<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >, std::less<int>, std::allocator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > > >::_M_insert_(std::_Rb_tree_node_base const*, std::_Rb_tree_node_base const*, std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > const&): error: undefined reference to 'std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_const_iterator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >::operator--(): error: undefined reference to 'std::_Rb_tree_decrement(std::_Rb_tree_node_base const*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_const_iterator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >::operator++(): error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base const*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, void*, std::_Identity<void*>, std::less<void*>, std::allocator<void*> >::_M_create_node(void* const&): error: undefined reference to '__cxa_end_catch'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, void*, std::_Identity<void*>, std::less<void*>, std::allocator<void*> >::_M_create_node(void* const&): error: undefined reference to '__cxa_begin_catch'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, void*, std::_Identity<void*>, std::less<void*>, std::allocator<void*> >::_M_create_node(void* const&): error: undefined reference to '__cxa_rethrow'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_const_iterator<void*>::operator++(int): error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base const*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_iterator<std::pair<void* const, int> >::operator--(): error: undefined reference to 'std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, void*, std::_Identity<void*>, std::less<void*>, std::allocator<void*> >::_M_copy(std::_Rb_tree_node<void*> const*, std::_Rb_tree_node<void*>*): error: undefined reference to '__cxa_end_catch'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, void*, std::_Identity<void*>, std::less<void*>, std::allocator<void*> >::_M_copy(std::_Rb_tree_node<void*> const*, std::_Rb_tree_node<void*>*): error: undefined reference to '__cxa_begin_catch'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, void*, std::_Identity<void*>, std::less<void*>, std::allocator<void*> >::_M_copy(std::_Rb_tree_node<void*> const*, std::_Rb_tree_node<void*>*): error: undefined reference to '__cxa_rethrow'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<int, std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > >, std::_Select1st<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >, std::less<int>, std::allocator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > > >::_M_create_node(std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > const&): error: undefined reference to '__cxa_begin_catch'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<int, std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > >, std::_Select1st<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >, std::less<int>, std::allocator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > > >::_M_create_node(std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > const&): error: undefined reference to '__cxa_rethrow'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<int, std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > >, std::_Select1st<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >, std::less<int>, std::allocator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > > >::_M_create_node(std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > const&): error: undefined reference to '__cxa_end_catch'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree_iterator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >::operator--(): error: undefined reference to 'std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > > >::deallocate(std::_Rb_tree_node<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >*, unsigned long): error: undefined reference to 'operator delete(void*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<void* const, int> > >::deallocate(std::_Rb_tree_node<std::pair<void* const, int> >*, unsigned long): error: undefined reference to 'operator delete(void*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, void*, std::_Identity<void*>, std::less<void*>, std::allocator<void*> >::_M_erase_aux(std::_Rb_tree_const_iterator<void*>): error: undefined reference to 'std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<int, std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > >, std::_Select1st<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >, std::less<int>, std::allocator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > >): error: undefined reference to 'std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function std::_Rb_tree<void*, std::pair<void* const, int>, std::_Select1st<std::pair<void* const, int> >, std::less<void*>, std::allocator<std::pair<void* const, int> > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<void* const, int> >): error: undefined reference to 'std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function __gnu_cxx::new_allocator<std::_Rb_tree_node<void*> >::deallocate(std::_Rb_tree_node<void*>*, unsigned long): error: undefined reference to 'operator delete(void*)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function __gnu_cxx::new_allocator<std::_Rb_tree_node<void*> >::allocate(unsigned long, void const*): error: undefined reference to 'std::__throw_bad_alloc()'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function __gnu_cxx::new_allocator<std::_Rb_tree_node<void*> >::allocate(unsigned long, void const*): error: undefined reference to 'operator new(unsigned long)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<void* const, int> > >::allocate(unsigned long, void const*): error: undefined reference to 'std::__throw_bad_alloc()'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<void* const, int> > >::allocate(unsigned long, void const*): error: undefined reference to 'operator new(unsigned long)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > > >::allocate(unsigned long, void const*): error: undefined reference to 'std::__throw_bad_alloc()'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o):tmpxft_00004a24_00000000-3_memory.cudafe1.cpp:function __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > > >::allocate(unsigned long, void const*): error: undefined reference to 'operator new(unsigned long)'
/home/doudou/Programs/nwchem-6.3-src.2013-05-17/lib/LINUX64/libtce.a(memory.o)(.eh_frame+0xb1e53): error: undefined reference to '__gxx_personality_v0'
collect2: ld returned 1 exit status
make: *** [all] Error 1


The following is the configuration script I am using:

Quote:username
#!/bin/bash
export NWCHEM_TOP=$HOME/Programs/nwchem-6.3-src.2013-05-17
export NWCHEM_TARGET=LINUX64
export USE_MPI=y
export USE_MPIF=y
export USE_MPIF4=y
export MPI_LOC=$HOME/Programs/OpenMPI
export LIBMPI="-lmpi_f90 -lmpi_f77 -lmpi -lpthread"
export MPI_LIB=$MPI_LOC/lib
export MPI_INCLUDE=$MPI_LOC/include
export TCE_CUDA=Y
export CUDA_LIBS="-L/usr/local/cuda/lib64 -L/usr/local/cuda/lib -lcudart"
export CUDA_FLAGS="-arch sm_20 "
export CUDA_INCLUDE="-I. -I/usr/local/cuda/include"
export LARGE_FILES=TRUE
export NWCHEM_MODULES=all
export MKLROOT=/opt/intel/mkl/lib/intel64
export BLASOPT="-L$MKLROOT -lmkl_scalapack_ilp64 -lmkl_cdft_core -lmkl_gf_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_ilp64 -ldl -lpthread -lm"
make clean
make FC=gfortran FFLAGS="-fdefault-integer-8 -m64" CUDA=nvcc nwchem_config
make FC=gfortran FFLAGS="-fdefault-integer-8 -m64" CUDA=nvcc HAS_BLAS=yes


Any ideas what libraries I am missing? Thanks in advance