Make error in Win 10: " error: no match for 'operator--' "


#1

Hi,

I’m trying to set up my environment for the upcoming CS410 DSO course at Univerity of Illinois. I’m using the following configuration (the MeTA required components were downloaded and installed on Aug 14, 2018):

  • Windows 10
  • msys2-x86_64-20180531 (SHA256 verified)
  • doxygen-1.8.14 (I was getting cmake errors without this)
  • graphviz-2.38 (Cotains the doxygen’s dot component)

With the previous components installed, I followed all the MeTA setup steps accurately and I got a make error at 59% of completion, here the last log lines:

C:/msys64/mingw64/include/c++/8.2.0/bits/stl_iterator_base_funcs.h:183:2: error: no match for ‘operator–’ (operand type is ‘meta::learn::dataset_view::iterator’)
_ –i;
_ ^~~~~

make[2]: *** [src/features/tools/CMakeFiles/feature-summary.dir/build.make:63: src/features/tools/CMakeFiles/feature-summary.dir/feature_summary.cpp.obj] Error 1
make[1]: *** [CMakeFiles/Makefile2:1438: src/features/tools/CMakeFiles/feature-summary.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

Previously the cmake process showed this:

cmake … -G “MSYS Makefiles” -DCMAKE_BUILD_TYPE=Release
– The C compiler identification is GNU 8.2.0
– The CXX compiler identification is GNU 8.2.0
– Check for working C compiler: C:/msys64/mingw64/bin/gcc.exe
– Check for working C compiler: C:/msys64/mingw64/bin/gcc.exe – 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: C:/msys64/mingw64/bin/g++.exe
– Check for working CXX compiler: C:/msys64/mingw64/bin/g++.exe – works
– Detecting CXX compiler ABI info
– Detecting CXX compiler ABI info - done
– Detecting CXX compile features
– Detecting CXX compile features - done
– Looking for pthread.h
– Looking for pthread.h - found
– Looking for pthread_create
– Looking for pthread_create - found
– Found Threads: TRUE
– Found ZLIB: C:/msys64/mingw64/lib/libz.dll.a (found version “1.2.11”)
– Looking for lzma_auto_decoder in C:/msys64/mingw64/lib/liblzma.dll.a
– Looking for lzma_auto_decoder in C:/msys64/mingw64/lib/liblzma.dll.a - found
– Looking for lzma_easy_encoder in C:/msys64/mingw64/lib/liblzma.dll.a
– Looking for lzma_easy_encoder in C:/msys64/mingw64/lib/liblzma.dll.a - found
– Looking for lzma_lzma_preset in C:/msys64/mingw64/lib/liblzma.dll.a
– Looking for lzma_lzma_preset in C:/msys64/mingw64/lib/liblzma.dll.a - found
– Found LibLZMA: C:/msys64/mingw64/include (found version “5.2.4”)
– Searching for ICU 58.2
– Found ICU: C:/msys64/mingw64/lib/libicuin.dll.a;C:/msys64/mingw64/lib/libicuuc.dll.a (Required is at least version “58.2”)
– ICU version found is 61.1.0, expected 58.2; attempting to build ICU from scratch…
– ICU include dirs: C:/msys64/home/ecorro/meta/build/deps/icu-58.2/include
– ICU libraries: icui18n;icuuc;icudata
– Using jemalloc: C:/msys64/mingw64/lib/jemalloc.dll.a
– Performing Test META_HAS_ALIGNED_ALLOC
– Performing Test META_HAS_ALIGNED_ALLOC - Failed
– Performing Test META_HAS_ALIGNED_MALLOC
– Performing Test META_HAS_ALIGNED_MALLOC - Success
– Performing Test META_HAS_BUILTIN_EXPECT
– Performing Test META_HAS_BUILTIN_EXPECT - Success
– Locating libstdc++ filesystem library
– Found libstdc++ filesystem library: C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/8.2.0/libstdc++fs.a
– Determining experimental filesystem library capabilities
– Performing Test META_HAS_EXPERIMENTAL_FILESYSTEM
– Performing Test META_HAS_EXPERIMENTAL_FILESYSTEM - Success
– Performing Test META_HAS_EXPERIMENTAL_FILESYSTEM_REMOVE_ALL
– Performing Test META_HAS_EXPERIMENTAL_FILESYSTEM_REMOVE_ALL - Success
– Performing Test META_HAS_EXPERIMENTAL_OPTIONAL
– Performing Test META_HAS_EXPERIMENTAL_OPTIONAL - Success
– Performing Test META_HAS_EXPERIMENTAL_STRING_VIEW
– Performing Test META_HAS_EXPERIMENTAL_STRING_VIEW - Success
– Performing Test META_HAS_STD_MAKE_UNIQUE
– Performing Test META_HAS_STD_MAKE_UNIQUE - Success
– Performing Test META_HAS_STD_SHARED_PTR_ATOMICS
– Performing Test META_HAS_STD_SHARED_PTR_ATOMICS - Success
– Found Doxygen: C:/Program Files/doxygen/bin/doxygen.exe (found version “1.8.14”) found components: doxygen dot
– Configuring done
– Generating done
– Build files have been written to: C:/msys64/home/ecorro/meta/build

Looks something somethig related to gcc-8 I’d appreciate help to solve this. thanks!


#2

Same problem for me. Please do respond.


#3

I tried several additional things and got tired. I installed an Ubuntu VM in my windows PC and the install process was not only easier but also much faster (Linux is much faster at compiling).

Good luck.