[molpro-user] Compilation of molpro with cuda support fails

Andy May MayAJ1 at cardiff.ac.uk
Tue Nov 16 18:32:15 GMT 2010


Hugo,

We have seen this, it seems to only happen with recent versions of GCC &
CUDA, and was not seen when the code was developed.

We have written to the author to ask them to fix the code.

Best wishes,

Andy

On 16/11/10 14:26, Hugo Martiniano wrote:
> Hello,
> 
> I am trying to compile molpro 2010.1, patch level 3, with support for cuda.
> The OS is Ubuntu 10.10 (64 bit) and the following compilers were used:
> 
>  - ifort 10.0.084
>  - gcc 4.4.5
>  - nvcc 3.2, V0.2.1221
> 
> The compilation fails at the linking stage with the following errors:
> 
> linking ../bin/molpro.exe
> failed
> ../lib/libmolpro.a(krn_dft_funcs_impl2.o): In function
> `molpro::fixed_exp(double)':
> tmpxft_00005e2e_00000000-1_krn_dft_funcs_impl2.cudafe1.cpp:(.text+0x0):
> multiple definition of `molpro::fixed_exp(double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x0):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl2.o): In function
> `molpro::max(double, double)':
> tmpxft_00005e2e_00000000-1_krn_dft_funcs_impl2.cudafe1.cpp:(.text+0x1e):
> multiple definition of `molpro::max(double, double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x1e):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl3.o): In function
> `molpro::fixed_exp(double)':
> tmpxft_00006055_00000000-1_krn_dft_funcs_impl3.cudafe1.cpp:(.text+0x0):
> multiple definition of `molpro::fixed_exp(double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x0):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl3.o): In function
> `molpro::max(double, double)':
> tmpxft_00006055_00000000-1_krn_dft_funcs_impl3.cudafe1.cpp:(.text+0x1e):
> multiple definition of `molpro::max(double, double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x1e):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl.o): In function
> `molpro::fixed_exp(double)':
> tmpxft_00006581_00000000-1_krn_dft_funcs_impl.cudafe1.cpp:(.text+0x0):
> multiple definition of `molpro::fixed_exp(double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x0):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl.o): In function
> `molpro::max(double, double)':
> tmpxft_00006581_00000000-1_krn_dft_funcs_impl.cudafe1.cpp:(.text+0x1e):
> multiple definition of `molpro::max(double, double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x1e):
> first defined here
> make[2]: [../bin/molpro.exe] Error 1 (ignored)
> failure
> ../lib/libmolpro.a(krn_dft_funcs_impl2.o): In function
> `molpro::fixed_exp(double)':
> tmpxft_00005e2e_00000000-1_krn_dft_funcs_impl2.cudafe1.cpp:(.text+0x0):
> multiple definition of `molpro::fixed_exp(double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x0):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl2.o): In function
> `molpro::max(double, double)':
> tmpxft_00005e2e_00000000-1_krn_dft_funcs_impl2.cudafe1.cpp:(.text+0x1e):
> multiple definition of `molpro::max(double, double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x1e):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl3.o): In function
> `molpro::fixed_exp(double)':
> tmpxft_00006055_00000000-1_krn_dft_funcs_impl3.cudafe1.cpp:(.text+0x0):
> multiple definition of `molpro::fixed_exp(double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x0):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl3.o): In function
> `molpro::max(double, double)':
> tmpxft_00006055_00000000-1_krn_dft_funcs_impl3.cudafe1.cpp:(.text+0x1e):
> multiple definition of `molpro::max(double, double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x1e):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl.o): In function
> `molpro::fixed_exp(double)':
> tmpxft_00006581_00000000-1_krn_dft_funcs_impl.cudafe1.cpp:(.text+0x0):
> multiple definition of `molpro::fixed_exp(double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x0):
> first defined here
> ../lib/libmolpro.a(krn_dft_funcs_impl.o): In function
> `molpro::max(double, double)':
> tmpxft_00006581_00000000-1_krn_dft_funcs_impl.cudafe1.cpp:(.text+0x1e):
> multiple definition of `molpro::max(double, double)'
> ../lib/libmolpro.a(krn_dft_funcs_impl1.o):tmpxft_00005afe_00000000-1_krn_dft_funcs_impl1.cudafe1.cpp:(.text+0x1e):
> first defined here
> make[2]: *** [../bin/molpro.exe] Error 1
> make[2]: Leaving directory `/home/hugo/opt/molpro2010.1/src'
> make[1]: *** [default] Error 2
> make[1]: Leaving directory `/home/hugo/opt/molpro2010.1/src'
> make: *** [src] Error 2
> 
> Attached is the CONFIG file used.
> Any help is appreciated.
> 
> Thank you,
> Hugo Martiniano
> 
> 
> 
> 
> _______________________________________________
> Molpro-user mailing list
> Molpro-user at molpro.net
> http://www.molpro.net/mailman/listinfo/molpro-user



More information about the Molpro-user mailing list