[AMBER] pmemd.cuda compilation problems on Ubuntu 12.4

From: Weinzierl, Robert O J <r.weinzierl.imperial.ac.uk>
Date: Wed, 20 Mar 2013 17:56:51 +0000

Dear all,

I am currently trying to compile the GPU-version of pmemd.cuda on a Ubuntu 12.4 system with installed Nvidia driver (version 310.40) and CUDA Toolbox (version 5.0.35).

The early stages of the installation

cd $AMBERHOME
make clean
./configure -cuda gnu
make install

appear to work well, but the compilation stops at a later stage with the following error messages:

make[4]: Leaving directory `/home/rojw/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/rojw/amber12/lib -L/home/rojw/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+0x16293): error: undefined reference to '__gxx_personality_v0'
collect2: ld returned 1 exit status
make[3]: *** [pmemd.cuda] Error 1
make[3]: Leaving directory `/home/rojw/amber12/src/pmemd/src'
make[2]: *** [cuda] Error 2
make[2]: Leaving directory `/home/rojw/amber12/src/pmemd'
make[1]: *** [cuda] Error 2
make[1]: Leaving directory `/home/rojw/amber12/src'
make: *** [install] Error 2


I would be very grateful for any advice about what might be going wrong on at that stage. The serial versions of AMBER12 and AmberTools installed without problems, so these errors are specifically associated with compiling the GPU-based version.

Robert



_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Wed Mar 20 2013 - 11:00:04 PDT
Custom Search