wfr/unshieldv3

fails to build on debian bullseye

Closed this issue · 3 comments

when I try and build I get the following:

jason@almond:~/source/unshieldv3/build$ cpp --version
cpp (Debian 10.2.1-6) 10.2.1 20210110
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

jason@almond:~/source/unshieldv3/build$ make
[ 25%] Building CXX object CMakeFiles/unshieldv3.dir/ISArchiveV3.cpp.o
/home/jason/source/unshieldv3/ISArchiveV3.cpp: In constructor ‘ISArchiveV3::ISArchiveV3(const std::filesystem::__cxx11::path&)’:
/home/jason/source/unshieldv3/ISArchiveV3.cpp:69:11: error: ‘class std::basic_ostream<char>’ has no member named ‘str’
   69 |         ).str());
      |           ^~~
/home/jason/source/unshieldv3/ISArchiveV3.cpp: In member function ‘std::vector<unsigned char> ISArchiveV3::decompress(const string&)’:
/home/jason/source/unshieldv3/ISArchiveV3.cpp:165:15: error: ‘class std::basic_ostream<char>’ has no member named ‘str’
  165 |             ).str()
      |               ^~~
/home/jason/source/unshieldv3/ISArchiveV3.cpp:185:15: error: ‘class std::basic_ostream<char>’ has no member named ‘str’
  185 |             ).str()
      |               ^~~
make[2]: *** [CMakeFiles/unshieldv3.dir/build.make:95: CMakeFiles/unshieldv3.dir/ISArchiveV3.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:95: CMakeFiles/unshieldv3.dir/all] Error 2
make: *** [Makefile:149: all] Error 2
wfr commented

Thanks for your report.

Indeed it compiles with gcc-11, but not gcc-10. Apparently this feature is still work in progress:
C++ Standard Library Defect Report #1203

wfr commented

Please try it now.

thank you, that fixed it!