Actions
Bug #2593
opencompiling with gcc-10 fails
Start date:
12/05/2019
Due date:
% Done:
0%
Estimated time:
Description
Hi,
compiling vdr-epg2vdr against gcc-10 fails with the following message:
BUILDSTDERR: In file included from service.c:8: BUILDSTDERR: service.h:103:9: error: 'string' in namespace 'std' does not name a type BUILDSTDERR: 103 | std::string details; BUILDSTDERR: | ^~~~~~ BUILDSTDERR: service.h:16:1: note: 'std::string' is defined in header '<string>'; did you forget to '#include <string>'? BUILDSTDERR: 15 | #include <map> BUILDSTDERR: +++ |+#include <string> BUILDSTDERR: 16 | BUILDSTDERR: make: *** [Makefile:122: service.o] Error 1 BUILDSTDERR: make: *** Waiting for unfinished jobs....
This is a relatively common failure we're seeing with gcc-10 and occurs
as a result of header file cleanups within libstdc++. For example
various C++ runtime headers indirectly included <string> which in turn
included <local> and <cerrno>. Those indirect inclusions have been
eliminated which in turn forces packages to include the C++ headers they
actually need.
Fixing this is pretty simple. Something like the attached
patch.
Files
Actions