ITBE-Lab / MA

The Modular Aligner and The Modular SV Caller
MIT License
45 stars 3 forks source link

compile error of cmake #3

Closed gorliver closed 5 years ago

gorliver commented 5 years ago

Hi Arne and Markus, I would like to install MA and I have a compile error during the cmake step. The cmake is version 3.13.3. Here is the output: Cloning into 'MA'... remote: Enumerating objects: 345, done. remote: Counting objects: 100% (345/345), done. remote: Compressing objects: 100% (166/166), done. remote: Total 10050 (delta 208), reused 280 (delta 169), pack-reused 9705 Receiving objects: 100% (10050/10050), 7.53 MiB | 26.33 MiB/s, done. Resolving deltas: 100% (7610/7610), done. -- 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 // CMAKE_ARGS: // CMAKE_BUILD_TYPE = "" // CMAKE_CXX_FLAGS = // CMAKE_CXX_FLAGS_DEBUG = -g // CMAKE_CXX_FLAGS_RELEASE = -O3 -DNDEBUG // CMAKE_CXX_FLAGS_RELWITHDEBINFO = -O2 -g -DNDEBUG // CMAKE_CXX_FLAGS_MINSIZEREL = -Os -DNDEBUG Build type set to "Release" -- Found PythonLibs: /opt/lib/libpython3.5m.a (found suitable version "3.5.1", minimum required is "3.5") Found Python Libs -- Found ZLIB: /usr/lib64/libz.so (found version "1.2.7") Found zlib -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Check if compiler accepts -pthread -- Check if compiler accepts -pthread - yes -- Found Threads: TRUE Include pybind11 ... -- Found PythonInterp: /home/workspace/python/bin/python3.6 (found version "3.6.5") -- Found PythonLibs: /opt/lib/libpython3.5m.a -- pybind11 v2.3.dev0 Include libkswcpp ... Include libMA ... -- libMA: Build shared library with python support via local pybind11. -- Performing Test HAS_FLTO -- Performing Test HAS_FLTO - Success -- LTO enabled -- libMA: Filesystem support for GCC below version 8 -- libMA: Building shared library components that rely on zlib. -- libMA: Version = 1.1.1-9d9c5a6-D -- libMA: generating test index_generation.cpp -- libMA: generating test random_alignments.cpp -- libMA: generating test random_paired_alignments.cpp -- Found PythonInterp: /home/workspace/python/bin/python3.6 (found suitable version "3.6.5", minimum required is "3.5") -- libMA: generating test random_alignments.py -- Could NOT find wxWidgets (missing: wxWidgets_LIBRARIES wxWidgets_INCLUDE_DIRS) -- Configuring done -- Generating done -- Build files have been written to: /home/workspace/software/MA/build Scanning dependencies of target kswcpp [ 1%] Building CXX object libs/kswcpp/CMakeFiles/kswcpp.dir/src/cpu_info.cpp.o In file included from /home/workspace/software/MA/libs/kswcpp/src/cpu_info.cpp:7:0: /home/workspace/software/MA/libs/kswcpp/inc/cpu_info.h: In constructor ‘CPU_Info::CPU_Info_Internal::CPU_Info_Internal()’: /home/workspace/software/MA/libs/kswcpp/inc/cpu_info.h:64:36: error: expected ‘,’ before ‘)’ token static_assert( sizeof(int) == 4 ); // implies 0x20 % sizeof( int ) == 0 ^ /home/workspace/software/MA/libs/kswcpp/inc/cpu_info.h:64:36: error: expected string-literal before ‘)’ token make[2]: [libs/kswcpp/CMakeFiles/kswcpp.dir/src/cpu_info.cpp.o] Error 1 make[1]: [libs/kswcpp/CMakeFiles/kswcpp.dir/all] Error 2 make: *** [all] Error 2

Did I miss something? Many Thanks!

MarkusRainerSchmidt commented 5 years ago

Hi,

You tried to compile MA using GCC 4.8.5, which lacks C++17 support. Please update to some newer edition of GCC & G++ (we currently use 6.3.0). A backport for pre C++17 support would be a lot of effort. Therefore, we do not plan to work on this. We added a check in cmake that looks for C++17 support and deliver an error message, if the support is missing.

Best wishes Markus

gorliver commented 5 years ago

The GCC 7.2 works perfectly. Thank you very much!