[mythtv] Re: CVS compile errors on kernel 2.6.9

Andy Mell amell at cambridge.org
Wed Nov 10 14:21:28 UTC 2004

Like others I have been trying to compile mythtv-cvs on linux 2.6.9, with 
2.6.9 kernel headers and DVB support enabled, on a Fedora FC2 system.

I am using 2.6.9 kernel headers as I wanted to use the dvb modules that 
come with 2.6.9 which are not in FC2 standard.

Looks like the cdrom.h header in 2.6.9 kernel includes is broken which 
causes compile failures on mythcdrom-linux.cpp

make[2]: Entering directory `/root/mythtv-cvs/mythtv/libs/libmyth' 
g++ -c -pipe -Wall -W -O3 -march=pentiumpro -fomit-frame-pointer 
 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/lib/qt-3.1/mkspecs/default 
 -I. -I/usr/local/include -I/usr/src/dvb-kernel/linux/include 
 -I../libmythsamplerate -I/usr/lib/qt-3.1/include -o mythcdrom-linux.o 
 In file included from /usr/include/asm/byteorder.h:57, 
 from /usr/include/linux/cdrom.h:14, 
 from mythcdrom-linux.cpp:3: 
 /usr/include/linux/byteorder/little_endian.h:43: syntax error before 
 `(' token 
 /usr/include/linux/byteorder/little_endian.h:47: parse error before 
  `*' token 
 /usr/include/linux/byteorder/little_endian.h: In function `__u64 
 /usr/include/linux/byteorder/little_endian.h:49: `p' undeclared (first 
  use this function) 

I see on kernel.org there is a patch in the queue relating to this for 
2.6.9, so this may well be fixed in 2.6.10

To fix this I:

- reverted to standard FC2 /usr/include/linux
- made a private copy of just the dvb headers from the 2.6.9 kernel 
includes to /home/mythtv/include/linux/dvb
- changed settings.pro to use 

# DVB support
CONFIG += using_dvb
# Note: INCLUDEPATH should point to the directory with
#   'linux/dvb/frontend.h', not the directory with frontend.h
INCLUDEPATH += /home/mythtv/include/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mythtv.org/pipermail/mythtv-dev/attachments/20041110/0b05a2ca/attachment.htm

More information about the mythtv-dev mailing list