GeometryCollective / boundary-first-flattening

MIT License
768 stars 96 forks source link

Compiling issue on CentOS7 #5

Open jo-nike opened 6 years ago

jo-nike commented 6 years ago

Hey there, is there a minimum version for suitesparce needed?

[_build]$ make -j 4
[ 25%] Built target glfw_objects
[ 26%] Built target glfw
[ 78%] Built target nanogui-obj
[ 80%] Built target nanogui
[ 81%] Linking CXX executable bff
/bin/ld: /usr/local/lib64/liblapack.a(zlarfg.f.o): undefined reference to symbol 'zscal_'
/usr/lib64/atlas/libsatlas.so.3: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [bff] Error 1
make[1]: *** [CMakeFiles/bff.dir/all] Error 2
make: *** [all] Error 2

I'm running centos7, version 4.0.2-10 of suitesparse. Seems to relate to the order lapack and blas are included but a priorio all look fine.

Here's my cmake for good mesure:

[jniquet@mtl-rpmbuild01 _build]$ cmake ..
-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Start to FindSuiteSparse.cmake :
--    find_library will search inside lib64 directory (can be changed with SuiteSparse_SEARCH_LIB_POSTFIX)
--    SuiteSparse_AMD_FOUND = ON : 
--       * SuiteSparse_AMD_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_AMD_LIBRARY_DEBUG = /lib64/libamd.so
--       * SuiteSparse_AMD_LIBRARY_RELEASE = /lib64/libamd.so
--       * SuiteSparse_AMD_DEFINITIONS = -DNPARTITION
--    SuiteSparse_CAMD_FOUND = ON : 
--       * SuiteSparse_CAMD_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_CAMD_LIBRARY_DEBUG = /lib64/libcamd.so
--       * SuiteSparse_CAMD_LIBRARY_RELEASE = /lib64/libcamd.so
--       * SuiteSparse_CAMD_DEFINITIONS = -DNPARTITION
--    SuiteSparse_CCOLAMD_FOUND = ON : 
--       * SuiteSparse_CCOLAMD_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_CCOLAMD_LIBRARY_DEBUG = /lib64/libccolamd.so
--       * SuiteSparse_CCOLAMD_LIBRARY_RELEASE = /lib64/libccolamd.so
--       * SuiteSparse_CCOLAMD_DEFINITIONS = -DNPARTITION
--    SuiteSparse_COLAMD_FOUND = ON : 
--       * SuiteSparse_COLAMD_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_COLAMD_LIBRARY_DEBUG = /lib64/libcolamd.so
--       * SuiteSparse_COLAMD_LIBRARY_RELEASE = /lib64/libcolamd.so
--       * SuiteSparse_COLAMD_DEFINITIONS = -DNPARTITION
--    SuiteSparse_CHOLMOD_FOUND = ON : 
--       * SuiteSparse_CHOLMOD_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_CHOLMOD_LIBRARY_DEBUG = /lib64/libcholmod.so
--       * SuiteSparse_CHOLMOD_LIBRARY_RELEASE = /lib64/libcholmod.so
--       * SuiteSparse_CHOLMOD_DEFINITIONS = -DNPARTITION
--    SuiteSparse_SPQR_FOUND = ON : 
--       * SuiteSparse_SPQR_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_SPQR_LIBRARY_DEBUG = /lib64/libspqr.so
--       * SuiteSparse_SPQR_LIBRARY_RELEASE = /lib64/libspqr.so
--       * SuiteSparse_SPQR_DEFINITIONS = -DNPARTITION
--    SuiteSparse_LDL_FOUND = ON : 
--       * SuiteSparse_LDL_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_LDL_LIBRARY_DEBUG = /lib64/libldl.so
--       * SuiteSparse_LDL_LIBRARY_RELEASE = /lib64/libldl.so
--       * SuiteSparse_LDL_DEFINITIONS = -DNPARTITION
--    SuiteSparse_BTF_FOUND = ON : 
--       * SuiteSparse_BTF_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_BTF_LIBRARY_DEBUG = /lib64/libbtf.so
--       * SuiteSparse_BTF_LIBRARY_RELEASE = /lib64/libbtf.so
--       * SuiteSparse_BTF_DEFINITIONS = -DNPARTITION
--    SuiteSparse_KLU_FOUND = ON : 
--       * SuiteSparse_KLU_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_KLU_LIBRARY_DEBUG = /lib64/libklu.so
--       * SuiteSparse_KLU_LIBRARY_RELEASE = /lib64/libklu.so
--       * SuiteSparse_KLU_DEFINITIONS = -DNPARTITION
--    SuiteSparse_CXSPARSE_FOUND = ON : 
--       * SuiteSparse_CXSPARSE_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_CXSPARSE_LIBRARY_DEBUG = /lib64/libcxsparse.so
--       * SuiteSparse_CXSPARSE_LIBRARY_RELEASE = /lib64/libcxsparse.so
--       * SuiteSparse_CXSPARSE_DEFINITIONS = -DNPARTITION
--    SuiteSparse_UMFPACK_FOUND = ON : 
--       * SuiteSparse_UMFPACK_INCLUDE_DIR = /usr/include/suitesparse
--       * SuiteSparse_UMFPACK_LIBRARY_DEBUG = /lib64/libumfpack.so
--       * SuiteSparse_UMFPACK_LIBRARY_RELEASE = /lib64/libumfpack.so
--       * SuiteSparse_UMFPACK_DEFINITIONS = -DNPARTITION
-- final check: SuiteSparse_AMD_FOUND
-- final check: SuiteSparse_CAMD_FOUND
-- final check: SuiteSparse_CCOLAMD_FOUND
-- final check: SuiteSparse_COLAMD_FOUND
-- final check: SuiteSparse_CHOLMOD_FOUND
-- final check: SuiteSparse_SPQR_FOUND
-- final check: SuiteSparse_LDL_FOUND
-- final check: SuiteSparse_BTF_FOUND
-- final check: SuiteSparse_KLU_FOUND
-- final check: SuiteSparse_CXSPARSE_FOUND
-- final check: SuiteSparse_UMFPACK_FOUND
--    SuiteSparse_USE_LAPACK_BLAS = ON : 
--       * SuiteSparse_LAPACK_BLAS_LIBRARIES : 
--          /usr/local/lib64/libblas.a
--          /usr/local/lib64/liblapack.a
-- Finish to FindSuiteSparse.cmake => SuiteSparse_FOUND=ON
-- SuiteSparse_LIBS: optimized;/lib64/libamd.so;debug;/lib64/libamd.so;optimized;/lib64/libcamd.so;debug;/lib64/libcamd.so;optimized;/lib64/libccolamd.so;debug;/lib64/libccolamd.so;optimized;/lib64/libcolamd.so;debug;/lib64/libcolamd.so;optimized;/lib64/libcholmod.so;debug;/lib64/libcholmod.so;optimized;/lib64/libspqr.so;debug;/lib64/libspqr.so;optimized;/lib64/libldl.so;debug;/lib64/libldl.so;optimized;/lib64/libbtf.so;debug;/lib64/libbtf.so;optimized;/lib64/libklu.so;debug;/lib64/libklu.so;optimized;/lib64/libcxsparse.so;debug;/lib64/libcxsparse.so;optimized;/lib64/libumfpack.so;debug;/lib64/libumfpack.so;/usr/local/lib64/libblas.a;/usr/local/lib64/liblapack.a
-- Setting build type to 'Release' as none was specified.
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Using X11 for window creation
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/lib64/libX11.so
-- Performing Test HAS_CPP14_FLAG
-- Performing Test HAS_CPP14_FLAG - Failed
-- Performing Test HAS_CPP11_FLAG
-- Performing Test HAS_CPP11_FLAG - Success
-- NanoGUI: LTO support enabled.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jniquet/projects/boundary-first-flattening/_build
rohan-sawhney commented 6 years ago

@jo-nike I'm not a centOS user so I can't be certain, but this seems like a problem with your lapack static lib rather than the suitesparse version. Can you try compiling newer versions of blas and lapack on your machine?