[gmx-developers] gromacs 4.6.1 detection problems with ATLAS and CUDA

Evren Yurtesen eyurtese at abo.fi
Wed Mar 6 11:04:10 CET 2013


Hello,

I am not exactly sure if this is a bug but I realized that cmake system of
gromacs couldnt find my ATLAS libraries. First problem was that it needed
-lgfortran (and then -lcblas also) for compiling with gcc. The error I found
in cmake error file can be found below.

In addition while documentation suggests latest GCC versions, the only
compatible version of GCC with CUDA 5.0 is GCC 4.6 but there doesnt seem to
be any checks for this.

Run Build Command:/usr/bin/gmake "cmTryCompileExec3752895534/fast"
/usr/bin/gmake -f CMakeFiles/cmTryCompileExec3752895534.dir/build.make
CMakeFiles/cmTryCompileExec3752895534.dir/build
gmake[1]: Entering directory
`/home/eyurtese/tmp/gromacs-4.6.1/build-cmake/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report
/home/eyurtese/tmp/gromacs-4.6.1/build-cmake/CMakeFiles/CMakeTmp/CMakeFiles
1
Building C object
CMakeFiles/cmTryCompileExec3752895534.dir/CheckFunctionExists.c.o
/export/modules/compilers/gnu/gcc/4.7.2/bin/gcc   -Wextra
-Wno-missing-field-initializers -Wno-sign-compare -Wall -Wno-unused
-Wunused-value  -march=native -mtune=native   -DCHECK_FUNCTION_EXISTS=dgemm_  
-o CMakeFiles/cmTryCompileExec3752895534.dir/CheckFunctionExists.c.o   -c
/usr/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTryCompileExec3752895534
/usr/bin/cmake -E cmake_link_script
CMakeFiles/cmTryCompileExec3752895534.dir/link.txt --verbose=1
/export/modules/compilers/gnu/gcc/4.7.2/bin/gcc   -Wextra
-Wno-missing-field-initializers -Wno-sign-compare -Wall -Wno-unused
-Wunused-value  -march=native -mtune=native   -DCHECK_FUNCTION_EXISTS=dgemm_   
CMakeFiles/cmTryCompileExec3752895534.dir/CheckFunctionExists.c.o  -o
cmTryCompileExec3752895534 -rdynamic -Wl,-Bstatic -lf77blas -latlas
-Wl,-Bdynamic
/export/modules/devel/ATLAS/3.10.1/gnu/lib/libf77blas.a(xerbla.o): In
function `xerbla_':
xerbla.f:(.text+0x4a): undefined reference to `_gfortran_st_write'
xerbla.f:(.text+0x5a): undefined reference to
`_gfortran_transfer_character_write'
xerbla.f:(.text+0x6a): undefined reference to
`_gfortran_transfer_integer_write'
xerbla.f:(.text+0x72): undefined reference to `_gfortran_st_write_done'
xerbla.f:(.text+0x7b): undefined reference to `_gfortran_stop_string'
collect2: error: ld returned 1 exit status
gmake[1]: *** [cmTryCompileExec3752895534] Error 1
gmake[1]: Leaving directory
`/home/eyurtese/tmp/gromacs-4.6.1/build-cmake/CMakeFiles/CMakeTmp'
gmake: *** [cmTryCompileExec3752895534/fast] Error 2


After this the -lcblas was missing. Which caused the following errors.

Run Build Command:/usr/bin/gmake "cmTryCompileExec2027137673/fast"
/usr/bin/gmake -f CMakeFiles/cmTryCompileExec2027137673.dir/build.make
CMakeFiles/cmTryCompileExec2027137673.dir/build
gmake[1]: Entering directory
`/home/eyurtese/tmp/gromacs-4.6.1/build-cmake/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report
/home/eyurtese/tmp/gromacs-4.6.1/build-cmake/CMakeFiles/CMakeTmp/CMakeFiles
1
Building C object
CMakeFiles/cmTryCompileExec2027137673.dir/CheckFunctionExists.c.o
/export/modules/compilers/gnu/gcc/4.7.2/bin/gcc   -Wextra
-Wno-missing-field-initializers -Wno-sign-compare -Wall -Wno-unused
-Wunused-value  -march=native -mtune=native   -DCHECK_FUNCTION_EXISTS=cheev_  
-o CMakeFiles/cmTryCompileExec2027137673.dir/CheckFunctionExists.c.o   -c
/usr/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTryCompileExec2027137673
/usr/bin/cmake -E cmake_link_script
CMakeFiles/cmTryCompileExec2027137673.dir/link.txt --verbose=1
/export/modules/compilers/gnu/gcc/4.7.2/bin/gcc   -Wextra
-Wno-missing-field-initializers -Wno-sign-compare -Wall -Wno-unused
-Wunused-value  -march=native -mtune=native   -DCHECK_FUNCTION_EXISTS=cheev_   
CMakeFiles/cmTryCompileExec2027137673.dir/CheckFunctionExists.c.o  -o
cmTryCompileExec2027137673 -rdynamic -Wl,-Bstatic -llapack -lf77blas -latlas
-Wl,-Bdynamic -lgfortran
/export/modules/devel/ATLAS/3.10.1/gnu/lib/liblapack.a(ATL_clarfb.o): In
function `ATL_clarfb':
ATL_larfb.c:(.text+0x160): undefined reference to `cblas_ccopy'
ATL_larfb.c:(.text+0x1fe): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x263): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x2b9): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x400): undefined reference to `cblas_ccopy'
ATL_larfb.c:(.text+0x4a4): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x509): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x55f): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x670): undefined reference to `cblas_ccopy'
ATL_larfb.c:(.text+0x6f4): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x759): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x7b2): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x8b8): undefined reference to `cblas_ccopy'
ATL_larfb.c:(.text+0x93f): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x9a4): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x9fd): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0xb04): undefined reference to `cblas_ccopy'
ATL_larfb.c:(.text+0xb97): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0xbfd): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0xc4e): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0xd54): undefined reference to `cblas_ccopy'
ATL_larfb.c:(.text+0xded): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0xe53): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0xea4): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0xf70): undefined reference to `cblas_ccopy'
ATL_larfb.c:(.text+0xff8): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x105e): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x10b7): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1180): undefined reference to `cblas_ccopy'
ATL_larfb.c:(.text+0x1208): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x126e): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x12c7): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x13a7): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x140c): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1464): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x14d0): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1521): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x15b8): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x161d): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1675): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x16e1): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1732): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x17d2): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1837): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x188e): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x18fb): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1951): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x19eb): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1a50): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1aa7): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1b14): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1b6a): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1bdf): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1c78): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1ccf): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1d3c): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1d95): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1e09): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1e8e): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1ee6): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x1f4e): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x1fa7): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x201c): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x20b0): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x2108): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x2170): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x21c9): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x2240): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x22dc): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x2333): undefined reference to `cblas_ctrmm'
ATL_larfb.c:(.text+0x23a0): undefined reference to `cblas_cgemm'
ATL_larfb.c:(.text+0x23f9): undefined reference to `cblas_ctrmm'
/export/modules/devel/ATLAS/3.10.1/gnu/lib/liblapack.a(ATL_clarft.o): In
function `ATL_clarft_blockFC':
ATL_larft.c:(.text+0x152): undefined reference to `cblas_ctrmm'
ATL_larft.c:(.text+0x1c3): undefined reference to `cblas_cgemm'
ATL_larft.c:(.text+0x211): undefined reference to `cblas_ctrmm'
ATL_larft.c:(.text+0x254): undefined reference to `cblas_ctrmm'
/export/modules/devel/ATLAS/3.10.1/gnu/lib/liblapack.a(ATL_clarft.o): In
function `ATL_clarft_blockFR':
ATL_larft.c:(.text+0x3bd): undefined reference to `cblas_ctrmm'
ATL_larft.c:(.text+0x433): undefined reference to `cblas_cgemm'
ATL_larft.c:(.text+0x481): undefined reference to `cblas_ctrmm'
ATL_larft.c:(.text+0x4c4): undefined reference to `cblas_ctrmm'
/export/modules/devel/ATLAS/3.10.1/gnu/lib/liblapack.a(ATL_clarft.o): In
function `ATL_clarft_blockBC':
ATL_larft.c:(.text+0x643): undefined reference to `cblas_ctrmm'
ATL_larft.c:(.text+0x69d): undefined reference to `cblas_cgemm'
ATL_larft.c:(.text+0x6e8): undefined reference to `cblas_ctrmm'
ATL_larft.c:(.text+0x72e): undefined reference to `cblas_ctrmm'
/export/modules/devel/ATLAS/3.10.1/gnu/lib/liblapack.a(ATL_clarft.o): In
function `ATL_clarft_blockBR':
ATL_larft.c:(.text+0x8c8): undefined reference to `cblas_ctrmm'
ATL_larft.c:(.text+0x920): undefined reference to `cblas_cgemm'
ATL_larft.c:(.text+0x96b): undefined reference to `cblas_ctrmm'
ATL_larft.c:(.text+0x9b1): undefined reference to `cblas_ctrmm'
/export/modules/devel/ATLAS/3.10.1/gnu/lib/liblapack.a(ATL_clarft.o): In
function `ATL_clarftFC':
ATL_larft.c:(.text+0xcfb): undefined reference to `cblas_cdotc_sub'
ATL_larft.c:(.text+0xdb3): undefined reference to `cblas_cdotu_sub'
/export/modules/devel/ATLAS/3.10.1/gnu/lib/liblapack.a(ATL_clarft.o): In
function `ATL_clarftBC':
ATL_larft.c:(.text+0xffd): undefined reference to `cblas_cdotc_sub'
ATL_larft.c:(.text+0x10a9): undefined reference to `cblas_cdotu_sub'
/export/modules/devel/ATLAS/3.10.1/gnu/lib/liblapack.a(ATL_clarft.o): In
function `ATL_clarftFR':
ATL_larft.c:(.text+0x1368): undefined reference to `cblas_cdotc_sub'
ATL_larft.c:(.text+0x1422): undefined reference to `cblas_cdotu_sub'
/export/modules/devel/ATLAS/3.10.1/gnu/lib/liblapack.a(ATL_clarft.o): In
function `ATL_clarftBR':
ATL_larft.c:(.text+0x165d): undefined reference to `cblas_cdotc_sub'
ATL_larft.c:(.text+0x1713): undefined reference to `cblas_cdotu_sub'
collect2: error: ld returned 1 exit status
gmake[1]: *** [cmTryCompileExec2027137673] Error 1
gmake[1]: Leaving directory
`/home/eyurtese/tmp/gromacs-4.6.1/build-cmake/CMakeFiles/CMakeTmp'
gmake: *** [cmTryCompileExec2027137673/fast] Error 2



Thanks,
Evren



--
View this message in context: http://gromacs.5086.n6.nabble.com/gromacs-4-6-1-detection-problems-with-ATLAS-and-CUDA-tp5006146.html
Sent from the GROMACS Developers Forum mailing list archive at Nabble.com.



More information about the gromacs.org_gmx-developers mailing list