I tried to compile vdr 2.1.6, it compiles with warnings but doesn't like my settings files. channels.conf, diseqc.conf etc So I can't test it with 2.1.6.
g++ -g -O3 -Wall -Wno-parentheses -fPIC -c -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DREMOTE_KBD -DLIRC_DEVICE="/var/run/lirc/lircd" -DVIDEODIR="/srv/vdr/video" -DCONFDIR="/var/lib/vdr" -DCACHEDIR="/var/cache/vdr" -DRESDIR="/usr/local/share/vdr" -DPLUGINDIR="/mnt/hdb1/vdr/t/vdr-2.1.6/PLUGINS/lib" -DLOCDIR="/mnt/hdb1/vdr/t/vdr-2.1.6/locale" -I/usr/include/freetype2 -o channels.o channels.c channels.c: In static member function ‘static tChannelID tChannelID::FromString(const char*)’: channels.c:32: warning: unknown conversion type character ‘m’ in format channels.c:32: warning: format ‘%d’ expects type ‘int*’, but argument 3 has type ‘char**’ channels.c:32: warning: too many arguments for format channels.c: In member function ‘bool cChannel::Parse(const char*)’: channels.c:598: warning: unknown conversion type character ‘m’ in format channels.c:598: warning: format ‘%d’ expects type ‘int*’, but argument 3 has type ‘char**’