[AMBER] CUDA install fails on ubuntu 12.04 using GNU compiler

From: ET <sketchfoot.gmail.com>
Date: Mon, 3 Jun 2013 21:49:03 +0100

Hi,

I got up to MPI amber 12 installed & tested on ubuntu 12.04 with no issues,
but am struggling with the serial GPU install. CUDA toolkit 5.0 is
installed and all the samples have been built.

On make install, i get the following errors:

###############################
make[5]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make[5]: `cuda.a' is up to date.
make[5]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make -C ./cuda
make[5]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make[5]: `cuda.a' is up to date.
make[5]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make -C ./cuda
make[5]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make[5]: `cuda.a' is up to date.
make[5]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
gfortran -O3 -mtune=native -DCUDA -Duse_SPFP -o pmemd.cuda
gbl_constants.o gbl_datatypes.o state_info.o file_io_dat.o mdin_ctrl_dat.o
mdin_ewald_dat.o mdin_debugf_dat.o prmtop_dat.o inpcrd_dat.o dynamics_dat.o
img.o nbips.o parallel_dat.o parallel.o gb_parallel.o pme_direct.o
pme_recip_dat.o pme_slab_recip.o pme_blk_recip.o pme_slab_fft.o
pme_blk_fft.o pme_fft_dat.o fft1d.o bspline.o pme_force.o pbc.o
nb_pairlist.o nb_exclusions.o cit.o dynamics.o bonds.o angles.o dihedrals.o
extra_pnts_nb14.o runmd.o loadbal.o shake.o prfs.o mol_list.o runmin.o
constraints.o axis_optimize.o gb_ene.o veclib.o gb_force.o timers.o
pmemd_lib.o runfiles.o file_io.o bintraj.o binrestart.o pmemd_clib.o
pmemd.o random.o degcnt.o erfcfun.o nmr_calls.o nmr_lib.o get_cmdline.o
master_setup.o pme_alltasks_setup.o pme_setup.o ene_frc_splines.o
gb_alltasks_setup.o nextprmtop_section.o angles_ub.o dihedrals_imp.o cmap.o
charmm.o charmm_gold.o findmask.o remd.o multipmemd.o remd_exchg.o amd.o
gbsa.o \
      ./cuda/cuda.a -L/usr/local/cuda-5.0/lib64 -L/usr/local/cuda-5.0/lib
-lcurand -lcufft -lcudart -L/home/RatAtatTat/programs/amber/12/amber12/lib
-L/home/RatAtatTat/programs/amber/12/amber12/lib -lnetcdf
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_startup_: error: undefined
reference to 'operator new(unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_startup_: error: undefined
reference to 'operator delete(void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_shutdown_: error: undefined
reference to 'operator delete(void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_init_: error: undefined reference
to 'operator new[](unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_init_: error: undefined reference
to 'operator new[](unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_init_: error: undefined reference
to 'operator delete[](void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_init_: error: undefined reference
to 'operator delete[](void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_amd_setup_: error: undefined
reference to 'operator new[](unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_amd_setup_: error: undefined
reference to 'operator new(unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_amd_setup_: error: undefined
reference to 'operator delete(void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator new[](unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator new(unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator new(unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator delete[](void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator delete[](void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator delete(void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function _GLOBAL__sub_I_gpu_startup_: error:
undefined reference to 'std::ios_base::Init::Init()'
./cuda/cuda.a(gpu.o):gpu.cpp:function _GLOBAL__sub_I_gpu_startup_: error:
undefined reference to 'std::ios_base::Init::~Init()'
./cuda/cuda.a(gpu.o):gpu.cpp:function typeinfo for GpuBuffer<double>:
error: undefined reference to 'vtable for __cxxabiv1::__class_type_info'
./cuda/cuda.a(gpu.o):gpu.cpp:function typeinfo for GpuBuffer<float2>:
error: undefined reference to 'vtable for __cxxabiv1::__class_type_info'
./cuda/cuda.a(gpu.o):gpu.cpp:function typeinfo for GpuBuffer<float>: error:
undefined reference to 'vtable for __cxxabiv1::__class_type_info'
./cuda/cuda.a(gpu.o):gpu.cpp:function typeinfo for GpuBuffer<unsigned int>:
error: undefined reference to 'vtable for __cxxabiv1::__class_type_info'
./cuda/cuda.a(gpu.o)(.eh_frame+0x14d13): error: undefined reference to
'__gxx_personality_v0'
collect2: ld returned 1 exit status
make[4]: *** [pmemd.cuda] Error 1
make[4]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src'
make[3]: *** [cuda] Error 2
make[3]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd'
make[2]: *** [cuda] Error 2
make[2]: Leaving directory `/home/RatAtatTat/programs/amber/12/amber12/src'
make[1]: [cuda] Error 2 (ignored)
make[1]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/AmberTools/src'
make[1]: Entering directory `/home/RatAtatTat/programs/amber/12/amber12/src'
Starting installation of Amber12 (cuda) at Mon Jun 3 21:34:20 BST 2013.
cd pmemd && make cuda
make[2]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd'
make -C src/ cuda
make[3]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src'
make -C ./cuda
make[4]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make[4]: `cuda.a' is up to date.
make[4]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make -C ./cuda
make[4]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make[4]: `cuda.a' is up to date.
make[4]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make -C ./cuda
make[4]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make[4]: `cuda.a' is up to date.
make[4]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make -C ./cuda
make[4]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make[4]: `cuda.a' is up to date.
make[4]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make -C ./cuda
make[4]: Entering directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
make[4]: `cuda.a' is up to date.
make[4]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src/cuda'
gfortran -O3 -mtune=native -DCUDA -Duse_SPFP -o pmemd.cuda
gbl_constants.o gbl_datatypes.o state_info.o file_io_dat.o mdin_ctrl_dat.o
mdin_ewald_dat.o mdin_debugf_dat.o prmtop_dat.o inpcrd_dat.o dynamics_dat.o
img.o nbips.o parallel_dat.o parallel.o gb_parallel.o pme_direct.o
pme_recip_dat.o pme_slab_recip.o pme_blk_recip.o pme_slab_fft.o
pme_blk_fft.o pme_fft_dat.o fft1d.o bspline.o pme_force.o pbc.o
nb_pairlist.o nb_exclusions.o cit.o dynamics.o bonds.o angles.o dihedrals.o
extra_pnts_nb14.o runmd.o loadbal.o shake.o prfs.o mol_list.o runmin.o
constraints.o axis_optimize.o gb_ene.o veclib.o gb_force.o timers.o
pmemd_lib.o runfiles.o file_io.o bintraj.o binrestart.o pmemd_clib.o
pmemd.o random.o degcnt.o erfcfun.o nmr_calls.o nmr_lib.o get_cmdline.o
master_setup.o pme_alltasks_setup.o pme_setup.o ene_frc_splines.o
gb_alltasks_setup.o nextprmtop_section.o angles_ub.o dihedrals_imp.o cmap.o
charmm.o charmm_gold.o findmask.o remd.o multipmemd.o remd_exchg.o amd.o
gbsa.o \
      ./cuda/cuda.a -L/usr/local/cuda-5.0/lib64 -L/usr/local/cuda-5.0/lib
-lcurand -lcufft -lcudart -L/home/RatAtatTat/programs/amber/12/amber12/lib
-L/home/RatAtatTat/programs/amber/12/amber12/lib -lnetcdf
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_startup_: error: undefined
reference to 'operator new(unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_startup_: error: undefined
reference to 'operator delete(void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_shutdown_: error: undefined
reference to 'operator delete(void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_init_: error: undefined reference
to 'operator new[](unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_init_: error: undefined reference
to 'operator new[](unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_init_: error: undefined reference
to 'operator delete[](void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_init_: error: undefined reference
to 'operator delete[](void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_amd_setup_: error: undefined
reference to 'operator new[](unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_amd_setup_: error: undefined
reference to 'operator new(unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_amd_setup_: error: undefined
reference to 'operator delete(void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator new[](unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator new(unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator new(unsigned long)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator delete[](void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator delete[](void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function gpu_constraint_molecule_list_setup_:
error: undefined reference to 'operator delete(void*)'
./cuda/cuda.a(gpu.o):gpu.cpp:function _GLOBAL__sub_I_gpu_startup_: error:
undefined reference to 'std::ios_base::Init::Init()'
./cuda/cuda.a(gpu.o):gpu.cpp:function _GLOBAL__sub_I_gpu_startup_: error:
undefined reference to 'std::ios_base::Init::~Init()'
./cuda/cuda.a(gpu.o):gpu.cpp:function typeinfo for GpuBuffer<double>:
error: undefined reference to 'vtable for __cxxabiv1::__class_type_info'
./cuda/cuda.a(gpu.o):gpu.cpp:function typeinfo for GpuBuffer<float2>:
error: undefined reference to 'vtable for __cxxabiv1::__class_type_info'
./cuda/cuda.a(gpu.o):gpu.cpp:function typeinfo for GpuBuffer<float>: error:
undefined reference to 'vtable for __cxxabiv1::__class_type_info'
./cuda/cuda.a(gpu.o):gpu.cpp:function typeinfo for GpuBuffer<unsigned int>:
error: undefined reference to 'vtable for __cxxabiv1::__class_type_info'
./cuda/cuda.a(gpu.o)(.eh_frame+0x14d13): error: undefined reference to
'__gxx_personality_v0'
collect2: ld returned 1 exit status
make[3]: *** [pmemd.cuda] Error 1
make[3]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd/src'
make[2]: *** [cuda] Error 2
make[2]: Leaving directory
`/home/RatAtatTat/programs/amber/12/amber12/src/pmemd'
make[1]: *** [cuda] Error 2
make[1]: Leaving directory `/home/RatAtatTat/programs/amber/12/amber12/src'
make: *** [install] Error 2


###############################

I tried adding '-lstdc++' to the PMEMD_LD variable in config.h (as
suggeste in the link below), but they seem to already be there in most
cases, and it does not sort the issue out. If anyone has any advice on the
matter, I would be obliged.

br,
g
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Mon Jun 03 2013 - 14:00:02 PDT
Custom Search