Closed andlaus closed 11 years ago
It seems like this is an issue with the FindSuiteSparse macro. I would normally investigate this myself, but I'm currently a bit short on time since I want to finish my thesis...
This error message stems from some path being blank and then tripping up the CMake parser. However, the log also refers to the variable _req_vars, which is not used since commit 11f3314d2d7b918ad09847ec477c5afa047732ed; are you sure this is the latest version? (git log -1 --pretty=format:"%h"
)
nope, I'm not sure. Did you push your changes into cmake branch of the main repo?
strange, I don't see this issue appearing in opm-core's issue list...
okay, I somehow screwed it up. now I hope that I didn't, but it still does not work. I've updated the logfiles on poware.org and that's the new output:
lauser@jabba:/temp/lauser/build/opm-core > cmake ~/src/opm-core
-- The C compiler identification is GNU 4.7.1
-- The CXX compiler identification is GNU 4.7.1
-- 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
-- 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
-- Build type: Debug
-- Performing Test HAVE_C99
-- Performing Test HAVE_C99 - Success
-- Found C99: -std=c99
-- Checking to see if CXX compiler accepts flag -std=c++11
-- Checking to see if CXX compiler accepts flag -std=c++11 - yes
-- Performing Test HAVE_NULLPTR
-- Performing Test HAVE_NULLPTR - Success
-- Performing Test HAVE_ARRAY
-- Performing Test HAVE_ARRAY - Success
-- Performing Test HAVE_INTEGRAL_CONSTANT
-- Performing Test HAVE_INTEGRAL_CONSTANT - Success
-- Performing Test HAVE_ATTRIBUTE_ALWAYS_INLINE
-- Performing Test HAVE_ATTRIBUTE_ALWAYS_INLINE - Success
-- Performing Test HAS_ATTRIBUTE_UNUSED
-- Performing Test HAS_ATTRIBUTE_UNUSED - Success
-- Performing Test HAS_ATTRIBUTE_DEPRECATED
-- Performing Test HAS_ATTRIBUTE_DEPRECATED - Success
-- Performing Test HAS_ATTRIBUTE_DEPRECATED_MSG
-- Performing Test HAS_ATTRIBUTE_DEPRECATED_MSG - Success
-- Performing Test HAVE_STATIC_ASSERT
-- Performing Test HAVE_STATIC_ASSERT - Success
-- Performing Test HAVE_VARIADIC_TEMPLATES
-- Performing Test HAVE_VARIADIC_TEMPLATES - Success
-- Performing Test HAVE_VARIADIC_CONSTRUCTOR_SFINAE
-- Performing Test HAVE_VARIADIC_CONSTRUCTOR_SFINAE - Success
-- Performing Test HAVE_RVALUE_REFERENCES
-- Performing Test HAVE_RVALUE_REFERENCES - Success
-- Looking for C++ include tuple
-- Looking for C++ include tuple - found
-- Looking for C++ include tr1/tuple
-- Looking for C++ include tr1/tuple - found
-- Looking for C++ include type_traits
-- Looking for C++ include type_traits - found
-- Looking for C++ include tr1/type_traits
-- Looking for C++ include tr1/typetraits - found
-- Looking for sgemm
-- Looking for sgemm_ - found
-- Looking for include file pthread.h
-- Looking for include file 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 pthreadcreate in pthread - found
-- Found Threads: TRUE
-- A library with BLAS API found.
-- A library with BLAS API found.
-- Looking for cheev
-- Looking for cheev_ - found
-- A library with LAPACK API found.
CMake Error at cmake/Modules/FindSuiteSparse.cmake:153 (list):
list sub-command REMOVE_DUPLICATES requires list to be present.
Call Stack (most recent call first):
cmake/Modules/OpmFind.cmake:69 (find_package)
cmake/Modules/OpmFind.cmake:98 (find_and_append_package_to)
cmake/Modules/OpmFind.cmake:104 (find_and_append_package_list_to)
CMakeLists.txt:62 (find_and_append_package_list)
CMake Error at cmake/Modules/FindSuiteSparse.cmake:154 (list): list sub-command REVERSE requires list to be present. Call Stack (most recent call first): cmake/Modules/OpmFind.cmake:69 (find_package) cmake/Modules/OpmFind.cmake:98 (find_and_append_package_to) cmake/Modules/OpmFind.cmake:104 (find_and_append_package_list_to) CMakeLists.txt:62 (find_and_append_package_list)
CMake Error at cmake/Modules/FindSuiteSparse.cmake:155 (list): list sub-command REMOVE_DUPLICATES requires list to be present. Call Stack (most recent call first): cmake/Modules/OpmFind.cmake:69 (find_package) cmake/Modules/OpmFind.cmake:98 (find_and_append_package_to) cmake/Modules/OpmFind.cmake:104 (find_and_append_package_list_to) CMakeLists.txt:62 (find_and_append_package_list)
CMake Error at cmake/Modules/FindSuiteSparse.cmake:156 (list): list sub-command REVERSE requires list to be present. Call Stack (most recent call first): cmake/Modules/OpmFind.cmake:69 (find_package) cmake/Modules/OpmFind.cmake:98 (find_and_append_package_to) cmake/Modules/OpmFind.cmake:104 (find_and_append_package_list_to) CMakeLists.txt:62 (find_and_append_package_list)
-- Could NOT find SuiteSparse (missing: SuiteSparse_LIBRARIES SuiteSparse_INCLUDE_DIRS)
-- Performing Test HAVE_MEM_USAGE_T_EXPANSIONS
-- Performing Test HAVE_MEM_USAGE_T_EXPANSIONS - Failed
-- Performing Test SUPERLU_MIN_VERSION_4_3
-- Performing Test SUPERLU_MIN_VERSION_4_3 - Failed
-- Performing Test SUPERLU_POST_2005_VERSION
-- Performing Test SUPERLU_POST_2005_VERSION - Failed
-- Could NOT find SuperLU (missing: SUPERLU_INCLUDE_DIR SUPERLU_LIBRARY)
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.25")
-- Performing Test HAVE_TINYXML
-- Performing Test HAVE_TINYXML - Failed
-- Could NOT find TinyXML (missing: TinyXML_INCLUDE_DIR TinyXML_LIBRARY)
-- Boost version: 1.49.0
-- Found the following Boost libraries:
-- date_time
-- filesystem
-- system
-- unit_test_framework
-- A library with BLAS API found.
-- Performing Test HAVE_DUNE_COMMON
-- Performing Test HAVE_DUNE_COMMON - Failed
-- Could NOT find SuperLU (missing: SUPERLU_INCLUDE_DIR SUPERLU_LIBRARY)
-- Performing Test HAVE_DUNE_ISTL
-- Performing Test HAVE_DUNE_ISTL - Failed
-- Could NOT find dune-istl (missing: dune-istl_INCLUDE_DIR)
-- Looking for isfinite
-- Looking for isfinite - found
-- Looking for glob
-- Looking for glob - found
-- Looking for fork
-- Looking for fork - found
-- Looking for getuid
-- Looking for getuid - found
-- Looking for lockf
-- Looking for lockf - found
-- Looking for opendir
-- Looking for opendir - found
-- Looking for readlinkat
-- Looking for readlinkat - found
-- Looking for symlink
-- Looking for symlink - found
-- Looking for va_copy
-- Looking for va_copy - found
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Success
-- Try OpenMP CXX flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Success
-- Found OpenMP: -fopenmp
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.7")
-- A library with BLAS API found.
-- A library with BLAS API found.
-- A library with LAPACK API found.
-- Could NOT find ERT (missing: ERT_INCLUDE_DIR ERT_LIBRARY HAVE_ERT)
-- Generating debug symbols: -ggdb3
-- Looking for strip utility
-- Looking for strip utility - found
-- Checking to see if CXX compiler accepts flag -flto
-- Checking to see if CXX compiler accepts flag -flto - yes
-- Checking to see if CXX compiler accepts flag -mtune=native
-- Checking to see if CXX compiler accepts flag -mtune=native - yes
-- All warnings enabled: -Wall
-- Performing Test HAVE_DYNAMIC_BOOST_TEST
-- Performing Test HAVE_DYNAMIC_BOOST_TEST - Success
-- Could NOT find AGMG (missing: AGMG_SOURCES CMAKE_Fortran_COMPILER_SUPPORTS_F90)
-- Writing config file "/temp/lauser/build/opm-core/config.h"...
-- Fortran/C interface not activated
-- Writing config file "/temp/lauser/build/opm-core/opm-core-config.cmake"...
-- This build defaults to installing in /usr/local
-- Writing config file "/temp/lauser/build/opm-core/opm-core-install.cmake"...
-- AGMG test disabled, since AGMG is not found.
-- ERT test disabled, since ERT is not found.
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.1")
-- Configuring incomplete, errors occurred!
There was still a bug in FindSuiteSparse.cmake, which doesn't quite use the same infrastructure as the other modules; this bug should now be fixed in commit a2189fa9ac0b3682e9606c8a8380b8d13fecfc33, pushed just a minute ago.
However, the underlaying issue is that it cannot find umfpack on your system (or dune-istl or AGMG, so you don't have any solvers). If you followed the README, there is an issue with the command, it should be:
sudo zypper in libumfpack
(perhaps also after enabling the science.repo; I haven't tested it -- maybe Iris can chime in)
thanks, now cmake works (I've updated the logfiles as usual), but compilation fails:
lauser@jabba:/temp/lauser/build/opm-core > make [ 2%] Built target opmcore_CXX_pch [ 3%] [ 4%] [ 6%] [ 4%] [ 6%] Building C object CMakeFiles/opmcore.dir/opm/core/pressure/mimetic/hybsys.c.o Building C object CMakeFiles/opmcore.dir/opm/core/linalg/call_umfpack.c.o Building C object CMakeFiles/opmcore.dir/opm/core/linalg/sparse_sys.c.o Building C object CMakeFiles/opmcore.dir/opm/core/pressure/mimetic/hybsys_global.c.o Building C object CMakeFiles/opmcore.dir/opm/core/pressure/mimetic/mimetic.c.o /home/lh2/lauser/src/opm-core/opm/core/linalg/call_umfpack.c:39:33: fatal error: suitesparse/umfpack.h: No such file or directory compilation terminated. make[3]: * [CMakeFiles/opmcore.dir/opm/core/linalg/call_umfpack.c.o] Error 1 make[3]: * Waiting for unfinished jobs.... make[2]: * [CMakeFiles/opmcore.dir/all] Error 2 make[1]: * [all] Error 2 make: *\ [__everything] Error 2
I've also verified that I've umfpack installed:
root@jabba:/temp/lauser/src/opm-coreformattedGitBranch: command not found > zypper se umfpack Loading repository data... Reading installed packages...
S | Name | Summary | Type
--+------------------------------------+------------------------------------------------------+-----------
i | libumfpack-5_6_0 | Sparse Multifrontal LU Factorization | package
| libumfpack-5_6_0-debuginfo | Debug information for package libumfpack-5_6_0 | package
i | libumfpack-5_6_1 | Sparse Multifrontal LU Factorization | package
Okay, I've found out that I need to install suitesparse-devel:
zypper in suitesparse-devel
maybe it is a good idea to adapt the FindSuiteSparse macro accordingly...
maybe it is a good idea to adapt the FindSuiteSparse macro accordingly...
Documentation you mean? I don't see how FindSuiteSparse can be adapted; it already claims you don't have the necessary library installed.
Documentation you mean? I don't see how FindSuiteSparse can be adapted; it already claims you don't have the necessary library installed.
possibly documentation, or an #if around the suitesparse dependent bits of code. (OPM-core is useful without a linear solver as well, e.g. for the eclipse parser.)
or an #if around the suitesparse dependent bits of code
That one should be solved by commit 99120d88384741559b073ff67f2a3965aeda805b
Confirmed. The library compiles cleanly now, only the tests fail to compile, but I suppose that's a minor issue:
lauser@jabba:~/build/opm-core > make tests [ 82%] Built target opmcore [ 83%] [ 84%] [ 85%] [ 86%] Built target test_wells [ 87%] Building C object CMakeFiles/test_cfs_tpfa.dir/tests/test_cfs_tpfa.c.o Built target test_column_extract Built target sparsetable_test Built target monotcubicinterpolator_test /home/lh2/lauser/src/opm-core/tests/test_cfs_tpfa.c:6:33: fatal error: suitesparse/umfpack.h: No such file or directory compilation terminated. make[4]: * [CMakeFiles/test_cfs_tpfa.dir/tests/test_cfs_tpfa.c.o] Error 1 make[3]: * [CMakeFiles/test_cfs_tpfa.dir/all] Error 2 make[3]: * Waiting for unfinished jobs.... [ 88%] [ 88%] [ 89%] Built target sparsevector_test Built target test_wachspresscoord Built target test_sf2p [ 90%] Built target test_read_vag make[2]: * [CMakeFiles/tests.dir/rule] Error 2 make[1]: * [tests] Error 2 make: * [__everything] Error 2
only the tests fail to compile
The entire tests/ directory is revamped due to issue #128; that particular bug incidently goes away (because the program is not a proper unit test; when it is converted to one, we should think about selectively disabling it)
During enablement of CDash, I tried out the new cmake build system (using the 'cmake' branch) on openSUSE Tumbleweed.
It failed and produced the following logfiles:
http://poware.org/opm-core/CMakeError.log http://poware.org/opm-core/CMakeOutput.log
(BTW: does anybody know if there is a more convenient way to attach files to the github bugtracker than gists?) The output on the terminal was the following:
lauser@jabba:/temp/lauser/build/opm-core > cmake ~/src/opm-core/ -- The C compiler identification is GNU 4.7.1 -- The CXX compiler identification is GNU 4.7.1 -- 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 -- 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 -- Build type: Debug -- Performing Test HAVE_C99 -- Performing Test HAVE_C99 - Success -- Found C99: -std=c99
-- Checking to see if CXX compiler accepts flag -std=c++11 -- Checking to see if CXX compiler accepts flag -std=c++11 - yes -- Performing Test HAVE_NULLPTR -- Performing Test HAVE_NULLPTR - Success -- Performing Test HAVE_ARRAY -- Performing Test HAVE_ARRAY - Success -- Performing Test HAVE_INTEGRAL_CONSTANT -- Performing Test HAVE_INTEGRAL_CONSTANT - Success -- Performing Test HAVE_ATTRIBUTE_ALWAYS_INLINE -- Performing Test HAVE_ATTRIBUTE_ALWAYS_INLINE - Success -- Performing Test HAS_ATTRIBUTE_UNUSED -- Performing Test HAS_ATTRIBUTE_UNUSED - Success -- Performing Test HAS_ATTRIBUTE_DEPRECATED -- Performing Test HAS_ATTRIBUTE_DEPRECATED - Success -- Performing Test HAS_ATTRIBUTE_DEPRECATED_MSG -- Performing Test HAS_ATTRIBUTE_DEPRECATED_MSG - Success -- Performing Test HAVE_STATIC_ASSERT -- Performing Test HAVE_STATIC_ASSERT - Success -- Performing Test HAVE_VARIADIC_TEMPLATES -- Performing Test HAVE_VARIADIC_TEMPLATES - Success -- Performing Test HAVE_VARIADIC_CONSTRUCTOR_SFINAE -- Performing Test HAVE_VARIADIC_CONSTRUCTOR_SFINAE - Success -- Performing Test HAVE_RVALUE_REFERENCES -- Performing Test HAVE_RVALUE_REFERENCES - Success -- Looking for C++ include tuple -- Looking for C++ include tuple - found -- Looking for C++ include tr1/tuple -- Looking for C++ include tr1/tuple - found -- Looking for C++ include type_traits -- Looking for C++ include type_traits - found -- Looking for C++ include tr1/type_traits -- Looking for C++ include tr1/typetraits - found -- Looking for sgemm -- Looking for sgemm_ - found -- Looking for include file pthread.h -- Looking for include file 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 pthreadcreate in pthread - found -- Found Threads: TRUE
-- A library with BLAS API found. -- A library with BLAS API found. -- Looking for cheev -- Looking for cheev_ - found -- A library with LAPACK API found. CMake Error at cmake/Modules/FindSuiteSparse.cmake:153 (list): list sub-command REMOVE_DUPLICATES requires list to be present. Call Stack (most recent call first): cmake/Modules/OpmFind.cmake:69 (find_package) cmake/Modules/OpmFind.cmake:98 (find_and_append_package_to) cmake/Modules/OpmFind.cmake:104 (find_and_append_package_list_to) CMakeLists.txt:53 (find_and_append_package_list)
CMake Error at cmake/Modules/FindSuiteSparse.cmake:154 (list): list sub-command REVERSE requires list to be present. Call Stack (most recent call first): cmake/Modules/OpmFind.cmake:69 (find_package) cmake/Modules/OpmFind.cmake:98 (find_and_append_package_to) cmake/Modules/OpmFind.cmake:104 (find_and_append_package_list_to) CMakeLists.txt:53 (find_and_append_package_list)
CMake Error at cmake/Modules/FindSuiteSparse.cmake:155 (list): list sub-command REMOVE_DUPLICATES requires list to be present. Call Stack (most recent call first): cmake/Modules/OpmFind.cmake:69 (find_package) cmake/Modules/OpmFind.cmake:98 (find_and_append_package_to) cmake/Modules/OpmFind.cmake:104 (find_and_append_package_list_to) CMakeLists.txt:53 (find_and_append_package_list)
CMake Error at cmake/Modules/FindSuiteSparse.cmake:156 (list): list sub-command REVERSE requires list to be present. Call Stack (most recent call first): cmake/Modules/OpmFind.cmake:69 (find_package) cmake/Modules/OpmFind.cmake:98 (find_and_append_package_to) cmake/Modules/OpmFind.cmake:104 (find_and_append_package_list_to) CMakeLists.txt:53 (find_and_append_package_list)
-- Could NOT find SuiteSparse (missing: SuiteSparse_LIBRARIES SuiteSparse_INCLUDE_DIRS) -- Performing Test HAVE_MEM_USAGE_T_EXPANSIONS -- Performing Test HAVE_MEM_USAGE_T_EXPANSIONS - Failed -- Performing Test SUPERLU_MIN_VERSION_4_3 -- Performing Test SUPERLU_MIN_VERSION_4_3 - Failed -- Performing Test SUPERLU_POST_2005_VERSION -- Performing Test SUPERLU_POST_2005_VERSION - Failed -- Could NOT find SuperLU (missing: SUPERLU_INCLUDE_DIR SUPERLU_LIBRARY) -- Found LibXml2: /usr/lib64/libxml2.so (found version "2.7.8") -- Boost version: 1.49.0 -- Found the following Boost libraries: -- date_time -- filesystem -- system -- unit_test_framework -- A library with BLAS API found. -- Found PkgConfig: /usr/bin/pkg-config (found version "0.25") -- Performing Test HAVE_DUNE_COMMON -- Performing Test HAVE_DUNE_COMMON - Failed CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:97 (message): Could NOT find dune-common (missing: _req_vars) Call Stack (most recent call first): /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:291 (_FPHSA_FAILURE_MESSAGE) cmake/Modules/OpmPackage.cmake:164 (find_package_handle_standard_args) cmake/Modules/Finddune-common.cmake:14 (find_opm_package) cmake/Modules/OpmPackage.cmake:69 (find_package) cmake/Modules/Finddune-istl.cmake:14 (find_opm_package) cmake/Modules/OpmFind.cmake:69 (find_package) cmake/Modules/OpmFind.cmake:98 (find_and_append_package_to) cmake/Modules/OpmFind.cmake:104 (find_and_append_package_list_to) CMakeLists.txt:53 (find_and_append_package_list)
-- Configuring incomplete, errors occurred!