Undefined references in TrilinosSS
Created by: tawiesn
There are undefined references in SuiteSparse from the new TriliniosSS package (see #649 (closed)) resulting in the following linker failures
CMakeFiles/trilinosss.dir/AMD/Source/trilinos_amd_2.c.o: In function `trilinos_amd_2':
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/AMD/Source/trilinos_amd_2.c:604: undefined reference to `sqrt'
CMakeFiles/trilinosss.dir/AMD/Source/trilinos_amd_l2.c.o: In function `trilinos_amd_l2':
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/AMD/Source/trilinos_amd_l2.c:606: undefined reference to `sqrt'
CMakeFiles/trilinosss.dir/CAMD/Source/trilinos_camd_2.c.o: In function `trilinos_camd_2':
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/CAMD/Source/trilinos_camd_2.c:728: undefined reference to `sqrt'
CMakeFiles/trilinosss.dir/CAMD/Source/trilinos_camd_l2.c.o: In function `trilinos_camd_l2':
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/CAMD/Source/trilinos_camd_l2.c:731: undefined reference to `sqrt'
CMakeFiles/trilinosss.dir/CCOLAMD/Source/trilinos_ccolamd.c.o: In function `init_scoring':
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/CCOLAMD/Source/trilinos_ccolamd.c:2353: undefined reference to `sqrt'
CMakeFiles/trilinosss.dir/CCOLAMD/Source/trilinos_ccolamd.c.o:/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/CCOLAMD/Source/trilinos_ccolamd.c:2353: more undefined references to `sqrt' follow
CMakeFiles/trilinosss.dir/KLU/Source/trilinos_klu_impl.c.o: In function `trilinos_klu_kernel_factor':
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/KLU/Source/trilinos_klu_impl.c:154: undefined reference to `ceil'
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/KLU/Source/trilinos_klu_impl.c:154: undefined reference to `ceil'
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/KLU/Source/trilinos_klu_impl.c:155: undefined reference to `ceil'
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/KLU/Source/trilinos_klu_impl.c:155: undefined reference to `ceil'
CMakeFiles/trilinosss.dir/KLU/Source/trilinos_klu_kernel.c.o: In function `trilinos_klu_kernel':
/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/KLU/Source/trilinos_klu_kernel.c:754: undefined reference to `ceil'
CMakeFiles/trilinosss.dir/KLU/Source/trilinos_klu_kernel.c.o:/home/tawiesn/software/trilinos/Trilinos/packages/common/auxiliarySoftware/SuiteSparse/src/KLU/Source/trilinos_klu_kernel.c:754: more undefined references to `ceil' follow
collect2: error: ld returned 1 exit status
make[2]: *** [packages/common/auxiliarySoftware/SuiteSparse/src/libtrilinosss.so.12.11] Error 1
make[1]: *** [packages/common/auxiliarySoftware/SuiteSparse/src/CMakeFiles/trilinosss.dir/all] Error 2
The problem can be reproduced if
CMAKE_SHARED_LINKER_FLAGS:STRING="-Wl,--no-undefined"
is set in the Trilinos configuration script.
It seems that the math library containing the sqrt and ceil functions is not properly linked.