Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
Anssi Hannula wrote: > Thank you. The bug is in libcap header file > /usr/include/sys/capability.h > > It does evil stuff like this: > > 25 /* > 26 * Make sure we can be included from userland by preventing > 27 * capability.h from including other kernel headers > 28 */ > 29 #define _LINUX_TYPES_H > 30 #define _LINUX_FS_H > 31 #define __LINUX_COMPILER_H > 32 #define __user > 33 > 34 typedef unsigned int __u32; > 35 typedef __u32 __le32; > > This completely prevents including /usr/include/linux/types.h, etc. > > It seems my distro has a patch that removes all the above lines to > resolve this issue. I'll try contacting libcap upstream on this issue. In the meantime, attached is a workaround that contains a clear comment describing the issue. -- Anssi Hannula Index: vdr-1.7.9/vdr.c === --- vdr-1.7.9/vdr.c +++ vdr-1.7.9/vdr.c 2009-08-23 23:26:15.935332431 +0300 @@ -32,7 +32,6 @@ #include #include #include -#include #include #include #include @@ -64,6 +63,9 @@ #include "tools.h" #include "transfer.h" #include "videodir.h" +// include this one last due to some versions of it being buggy: +// http://www.linuxtv.org/pipermail/vdr/2009-August/021194.html +#include #define MINCHANNELWAIT10 // seconds to wait between failed channel switchings #define ACTIVITYTIMEOUT 60 // seconds before starting housekeeping ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
Goga777 wrote: >> Which distribution and version are you using? > > debian sid kernel 2.6.30 > >> And package name where /usr/include/linux/types.h and related files >> would also help: >> rpm -qf /usr/include/linux/types.h (on rpm systems) >> dpkg -S /usr/include/linux/types.h (on deb systems, I think) > > arvdr:/usr/src/vdr-1.7.9# dpkg -S /usr/include/linux/types.h > linux-libc-dev: /usr/include/linux/types.h Thank you. The bug is in libcap header file /usr/include/sys/capability.h It does evil stuff like this: 25 /* 26 * Make sure we can be included from userland by preventing 27 * capability.h from including other kernel headers 28 */ 29 #define _LINUX_TYPES_H 30 #define _LINUX_FS_H 31 #define __LINUX_COMPILER_H 32 #define __user 33 34 typedef unsigned int __u32; 35 typedef __u32 __le32; This completely prevents including /usr/include/linux/types.h, etc. It seems my distro has a patch that removes all the above lines to resolve this issue. I'll try contacting libcap upstream on this issue. -- Anssi Hannula ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
> I have to use the following patch: > > --- vdr-1.7.5/vdr.c.orig2009-04-12 11:05:51.0 -0700 > +++ vdr-1.7.5/vdr.c 2009-04-12 11:07:08.0 -0700 > @@ -32,6 +32,7 @@ > #include > #include > #include > +#include > #include > #include > #include I checked and can confirm - vdr 179 compiled fine with this patch Goga ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
On Sun, Aug 23, 2009 at 12:26 PM, Goga777 wrote: >> Have you tried the patch I posted? > > no, because I have already solved this problem (as I wrote in my previous > mail) > > > I could compile vdr 179 after of adding in dvbdevice.h string like > > typedef unsigned char __u8; It would be nice if you did so others with the same problem can see the result. Otherwise what's the point? ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
> Which distribution and version are you using? debian sid kernel 2.6.30 > And package name where /usr/include/linux/types.h and related files > would also help: > rpm -qf /usr/include/linux/types.h (on rpm systems) > dpkg -S /usr/include/linux/types.h (on deb systems, I think) arvdr:/usr/src/vdr-1.7.9# dpkg -S /usr/include/linux/types.h linux-libc-dev: /usr/include/linux/types.h Goga ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
Goga777 wrote: >> Run this: >> g++ -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses -E -DREMOTE_KBD >> -DLIRC_DEVICE=\"/dev/lircd\" -DRCU_DEVICE=\"/dev/ttyS0\" -D_GNU_SOURCE >> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE >> -DVIDEODIR=\"/video\" -DCONFDIR=\"/etc/vdr\" >> -DPLUGINDIR=\"./PLUGINS/lib\" -DLOCDIR=\"./locale\" >> -I/usr/include/freetype2 -I../s2-liplianin/linux/include -o >> vdr.processed.c vdr.c >> >> vdr.processed.c should contain the preprocessed C++ source code. Please >> attach it (provided it is not too large) or upload somewhere. > > vdr.processed.c.bz2 > http://slil.ru/27922128 Which distribution and version are you using? And package name where /usr/include/linux/types.h and related files would also help: rpm -qf /usr/include/linux/types.h (on rpm systems) dpkg -S /usr/include/linux/types.h (on deb systems, I think) -- Anssi Hannula ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
> > I did so exactly in my previous mail > > > > PS > > vdr 178 compiled fine with existing headers > > Have you tried the patch I posted? no, because I have already solved this problem (as I wrote in my previous mail) I could compile vdr 179 after of adding in dvbdevice.h string like typedef unsigned char __u8; http://vdrportal.de/board/thread.php?postid=806612&sid=21750376f0aea416e10c099a4a488686#post806612 Goga ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
> Run this: > g++ -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses -E -DREMOTE_KBD > -DLIRC_DEVICE=\"/dev/lircd\" -DRCU_DEVICE=\"/dev/ttyS0\" -D_GNU_SOURCE > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE > -DVIDEODIR=\"/video\" -DCONFDIR=\"/etc/vdr\" > -DPLUGINDIR=\"./PLUGINS/lib\" -DLOCDIR=\"./locale\" > -I/usr/include/freetype2 -I../s2-liplianin/linux/include -o > vdr.processed.c vdr.c > > vdr.processed.c should contain the preprocessed C++ source code. Please > attach it (provided it is not too large) or upload somewhere. vdr.processed.c.bz2 http://slil.ru/27922128 ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
On Sun, Aug 23, 2009 at 12:07 PM, Goga777 wrote: > I did so exactly in my previous mail > > PS > vdr 178 compiled fine with existing headers Have you tried the patch I posted? ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
> >> Maybe one of these includes in these files is missing? > > > > as you can see - no, everything is ok > > Confirm that you looked at the correct files: > > You should first look under ../s2-liplianin/linux/include/ in dir /usr/src/s2-liplianin/linux/include/linux there's not any mentioned you files you can have a look yourselves http://mercurial.intuxication.org/hg/s2-liplianin/file/ecdc9c389f8a/linux/include/ , and if the > file in question doesn't exist there, you should look under > /usr/include/ (note, not in /usr/src). I did so exactly in my previous mail PS vdr 178 compiled fine with existing headers Goga ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
Goga777 wrote: Your headers seem broken. What should happen (i.e. in upstream kernel git) is: >>> let's have a look on my headers (debian sid kernel 2.6.30 s2-liplianin dvb) >> Did you look in /usr/include/linux/dvb/... or in /usr/src/linux/... ? > > /usr/src/s2-liplianin/linux > >> For compiling userspace stuff (which vdr for sure is), the versions >> in /usr/include are used. > > not so necessary > > it's possible to change this behaviour > > --> edit --> Make.config --> DVBDIR = /usr/src/s2-liplianin/linux Run this: g++ -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses -E -DREMOTE_KBD -DLIRC_DEVICE=\"/dev/lircd\" -DRCU_DEVICE=\"/dev/ttyS0\" -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DVIDEODIR=\"/video\" -DCONFDIR=\"/etc/vdr\" -DPLUGINDIR=\"./PLUGINS/lib\" -DLOCDIR=\"./locale\" -I/usr/include/freetype2 -I../s2-liplianin/linux/include -o vdr.processed.c vdr.c vdr.processed.c should contain the preprocessed C++ source code. Please attach it (provided it is not too large) or upload somewhere. -- Anssi Hannula ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
> > > Your headers seem broken. What should happen (i.e. in upstream kernel > > > git) is: > > > > let's have a look on my headers (debian sid kernel 2.6.30 s2-liplianin dvb) > > Did you look in /usr/include/linux/dvb/... or in /usr/src/linux/... ? /usr/src/s2-liplianin/linux > For compiling userspace stuff (which vdr for sure is), the versions > in /usr/include are used. not so necessary it's possible to change this behaviour --> edit --> Make.config --> DVBDIR = /usr/src/s2-liplianin/linux Goga ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
I have to use the following patch: --- vdr-1.7.5/vdr.c.orig2009-04-12 11:05:51.0 -0700 +++ vdr-1.7.5/vdr.c 2009-04-12 11:07:08.0 -0700 @@ -32,6 +32,7 @@ #include #include #include +#include #include #include #include ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
Goga777 wrote: > Anssi Hannula wrote: >> Maybe one of these includes in these files is missing? > > as you can see - no, everything is ok Confirm that you looked at the correct files: You should first look under ../s2-liplianin/linux/include/, and if the file in question doesn't exist there, you should look under /usr/include/ (note, not in /usr/src). -- Anssi Hannula ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
On Sonntag, 23. August 2009, Goga777 wrote: > > Your headers seem broken. What should happen (i.e. in upstream kernel > > git) is: > > let's have a look on my headers (debian sid kernel 2.6.30 s2-liplianin dvb) Did you look in /usr/include/linux/dvb/... or in /usr/src/linux/... ? For compiling userspace stuff (which vdr for sure is), the versions in /usr/include are used. Regards Matthias ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
> Your headers seem broken. What should happen (i.e. in upstream kernel > git) is: let's have a look on my headers (debian sid kernel 2.6.30 s2-liplianin dvb) > linux/dvb/frontend.h has: > #include I have it #ifndef _DVBFRONTEND_H_ #define _DVBFRONTEND_H_ #include > linux/types.h has: > #include my /usr/include/linux/types.h has it too #include #include > asm/types.h has: > #include my /usr/include/asm/types.h has it too #ifndef _ASM_X86_TYPES_H #define _ASM_X86_TYPES_H #include > asm-generic/int-ll64.h has: > typedef unsigned char __u8; no problem with asm-generic/int-ll64.h too * asm-generic/int-ll64.h * * Integer declarations for architectures which use "long long" * for 64-bit types. */ #ifndef _ASM_GENERIC_INT_LL64_H #define _ASM_GENERIC_INT_LL64_H #ifndef __ASSEMBLY__ /* * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the * header files exported to user space */ typedef __signed__ char __s8; typedef unsigned char __u8; typedef __signed__ short __s16; typedef unsigned short __u16; typedef __signed__ int __s32; typedef unsigned int __u32; > Maybe one of these includes in these files is missing? as you can see - no, everything is ok I could compile vdr 179 after of adding in dvbdevice.h string like typedef unsigned char __u8; Goga ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
Goga777 wrote: > Hi > > I can't compile vdr 179 > > arvdr:/usr/src/vdr# LANG=C make > g++ -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses -c -DREMOTE_KBD > -DLIRC_DEVICE=\"/dev/lircd\" -DRCU_DEVICE=\"/dev/ttyS0\" -D_GNU_SOURCE > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE > -DVIDEODIR=\"/video\" -DCONFDIR=\"/etc/vdr\" -DPLUGINDIR=\"./PLUGINS/lib\" > -DLOCDIR=\"./locale\" -I/usr/include/freetype2 > -I../s2-liplianin/linux/include vdr.c > In file included from dvbdevice.h:14, > from vdr.c:45: > ../s2-liplianin/linux/include/linux/dvb/frontend.h:92: error: '__u8' does not > name a type > ../s2-liplianin/linux/include/linux/dvb/frontend.h:93: error: '__u8' does not > name a type > ../s2-liplianin/linux/include/linux/dvb/frontend.h:98: error: '__u8' does not > name a type > ../s2-liplianin/linux/include/linux/dvb/frontend.h:99: error: '__u8' does not > name a type > ../s2-liplianin/linux/include/linux/dvb/frontend.h:361: error: '__u8' does > not name a type > make: *** [vdr.o] Error 1 Your headers seem broken. What should happen (i.e. in upstream kernel git) is: linux/dvb/frontend.h has: #include linux/types.h has: #include asm/types.h has: #include asm-generic/int-ll64.h has: typedef unsigned char __u8; Maybe one of these includes in these files is missing? -- Anssi Hannula ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] [ANNOUNCE] VDR developer version 1.7.9
Hi I can't compile vdr 179 arvdr:/usr/src/vdr# LANG=C make g++ -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses -c -DREMOTE_KBD -DLIRC_DEVICE=\"/dev/lircd\" -DRCU_DEVICE=\"/dev/ttyS0\" -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DVIDEODIR=\"/video\" -DCONFDIR=\"/etc/vdr\" -DPLUGINDIR=\"./PLUGINS/lib\" -DLOCDIR=\"./locale\" -I/usr/include/freetype2 -I../s2-liplianin/linux/include vdr.c In file included from dvbdevice.h:14, from vdr.c:45: ../s2-liplianin/linux/include/linux/dvb/frontend.h:92: error: '__u8' does not name a type ../s2-liplianin/linux/include/linux/dvb/frontend.h:93: error: '__u8' does not name a type ../s2-liplianin/linux/include/linux/dvb/frontend.h:98: error: '__u8' does not name a type ../s2-liplianin/linux/include/linux/dvb/frontend.h:99: error: '__u8' does not name a type ../s2-liplianin/linux/include/linux/dvb/frontend.h:361: error: '__u8' does not name a type make: *** [vdr.o] Error 1 frontend.h │ 11035│Jun 6 01:12 │ ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
[vdr] [ANNOUNCE] VDR developer version 1.7.9
VDR developer version 1.7.9 is now available at ftp://ftp.cadsoft.de/vdr/Developer/vdr-1.7.9.tar.bz2 A 'diff' against the previous version is available at ftp://ftp.cadsoft.de/vdr/Developer/vdr-1.7.8-1.7.9.diff WARNING: This is a *developer* version. Even though *I* use it in my productive environment. I strongly recommend that you only use it under controlled conditions and for testing and debugging. The changes since version 1.7.8: - Fixed storing the current OSD size in case the device has changed it in its setup menu (reported by Reinhard Nissl). - Fixed cDevice::PlayTsVideo() and cDevice::PlayTsAudio() in case only part of the buffer has been accepted by the device (reported by Udo Richter). - Changed the EIT filter setup to save a few handles on devices that do hardware filtering. - Fixed deleting expired timers if they have the VPS flag set, but the event they are assigned to doesn't have a VPS tag. - Fixed handling file name length on VFAT systems in case they contain UTF-8 characters (thanks to Rolf Ahrenberg). - Fixed generating CaPmts in case audio and video are encrypted using different ECM pids. - Updated vdr.1 to use the new file names in recording directories. - Fixed cRecordings::DelByName() to avoid compilation errors with gcc 4.4 (thanks to Matthias Schwarzott). - Increased the value of MAXFRAMESIZE to better suit HD recordings (thanks to Reinhard Nissl). - Implemented full handling of subtitling descriptors (thanks to Mikko Tuumanen). Have fun! Klaus ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr