[linux-dvb] Re: missing compat.h for dvbdev.h

Michael Krufky mkrufky at linuxtv.org
Thu Mar 30 23:48:15 CEST 2006

Trent Piepho wrote:
>> Christian Schoenebeck wrote:
>>> Hi!
>>> I just saw you commited that include of compat.h in:
>>> http://linuxtv.org/cgi-bin/viewcvs.cgi/dvb-kernel/linux/drivers/media/dvb/dvb-core/dvbdev.h?rev=1.27&view=log
>>> My Haupauge Nova-S doesn't work with my kernel (2.6.13), so I tried to
>>> backport CVS Head for my kernel version, but it's missing compat.h. Have you
>>> forgotten to commit.h or is it supposed to be provided by the common kernel
>>> headers?
> What Michael said about getting the Mercurual (Hg) repository instead of CVS is
> all true, but you will still have the same problem.
> If you try to take the current sources and put them into the kernel, it won't
> compile cleanly.  You will still be missing compat.h, which is in (once you
> get the Hg sources) v4l-dvb/v4l/compat.h.  It easy enough to make a link to
> it from where it's needed, but you will still have other problems.  They
> can be fixed, I compiled the Hg sources with kernel 2.6.12, but it's a pain.
> A pain you don't need to go though.  You can just compile the Hg sources
> outside the kernel directly from the v4l-dvb source tree.  Just follow the
> README that comes with v4l-dvb, it works fine.
> I only compiled as part of the kernel so I could test changes I made to the
> kernel build Kconfig files.
Here is what both of you don't know:

This is how to compile a new kernel, containing the very latest v4l-dvb 
code.  This method allows you to symlink the code from the mercurial 
tree directly into your kernel sources to build it all in one shot.

(warning - this will hose your kernel sources -- if you want to go back 
to the vanilla kernel, you'll have to unpack the tarball again)

try this:

1) clone the mercurial tree

2) cd v4l-dvb

3) make kernel-links

This step does the symlinking into the sources of your currently running 
kernel.  If, however, you want to symlink into an alternate location of 
kernel sources, then you would do this instead:

(from v4l-dvb top level dir ONLY)

v4l/scripts/makelinks.sh /path/to/kernel/source

4) build your new kernel as you normally would... This time, it will 
contain the latest bleeding-edge drivers from v4l-dvb.hg

I hope you find this useful.


Michael Krufky

More information about the linux-dvb mailing list