Hi,
"Martin Gansser" <martin.gansser(a)gmail.com> writes:
Hi,
i'am trying to compile vdr-2.4.1 for Fedora32, but this fails with the following
error message:
g++ -O3 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2
-Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC
-Werror=overloaded-virtual -Wno-parentheses -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fPIC -c -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DREMOTE_KBD -DVDR_USER=\"vdr\"
-DSDNOTIFY -DLIRC_DEVICE=\"/var/run/lirc/lircd\"
-DVIDEODIR=\"/var/lib/vdr/video\" -DCONFDIR=\"/etc/vdr\"
-DARGSDIR=\"/etc/vdr/conf.d\" -DCACHEDIR=\"/var/cache/vdr\"
-DRESDIR=\"/usr/share/vdr\" -DPLUGINDIR=\"/usr/lib64/vdr\"
-DLOCDIR=\"/usr/share/locale\" -I/usr/include/freetype2 -I/usr/include/libpng16
-o eit.o eit.c^M
eit.c: In constructor 'cTDT::cTDT(const u_char*)':^M
eit.c:394:13: error: 'stime' was not declared in this scope; did you mean
'ctime'?^M
394 | if (stime(&dvbtim) == 0)^M
| ^~~~~^M
| ctime^M
I tried the following patch already, but this doesn't work.
You need to `#define _DEFAULT_SOURCE` (since glibc 2.19) or `#define
_SVID_SOURCE` (for glibc <= 2.19) before including time.h (and before
any headers that could include time.h themselves).
--- a/eit.c.orig 2019-12-12 16:23:42.231599228 +0100
+++ b/eit.c 2019-12-12 16:24:09.093601411 +0100
@@ -13,6 +13,7 @@
#include "eit.h"
#include <sys/time.h>
+#include <time.h>
#include "epg.h"
#include "i18n.h"
#include "libsi/section.h"
Any help appreciated
Martin