[mythtv-users] Build error in fixes- and 0.20.2-branch (was: Compile error with 0.20.2 on Gentoo 2.6.10)

Jens Baumeister jens.baumeister at gmail.com
Sun Oct 7 17:32:50 UTC 2007


Hi again, answering myself!

After some research I gained some more insight into the error.

On 10/1/07, Jens Baumeister <jens.baumeister at gmail.com> wrote:

> I decided to upgrade my box (0.20, running fine on Gentoo kernel
> 2.6.10 with linuxdvb drivers 1.1.1 (I think...) for one of the older
> NOVA-T cards added) to 0.20.2 - unfortunately I got the error below.
> Build error:
> --------
>
> In file included from dvbchannel.h:22,
>                  from frequencytables.h:17,
>                  from frequencytables.cpp:1:
> dvbtypes.h:42:2: warning: #warning DVB API version < 3.1
> dvbtypes.h:43:2: warning: #warning ATSC will not be supported using
> the Linux DVB drivers
> frequencytables.cpp: In constructor `TransportScanItem::TransportScanItem(int,
>    const QString&, const QString&, const QString&, const DTVTransport&,
>    unsigned int)':
> frequencytables.cpp:82: error: invalid conversion from `int' to `fe_type'

My C skills are bit rusty, but I think I isolated the problem:

The current revision of the 0.20-fixes branch has this code in
frequencytables.cpp, lines 78 and 82:

fe_type type = FE_QPSK;
[...]
type = (_cardtype.upper() == "ATSC")   ? FE_ATSC   : type;

However, the same revision's dvbtypes.h has this code: (Lines 39-44)

#if (DVB_API_VERSION >= 3 && DVB_API_VERSION_MINOR >= 1)
#    define USE_ATSC
#else
#warning DVB API version < 3.1
#warning ATSC will not be supported using the Linux DVB drivers
#    define FE_ATSC       (FE_OFDM+1)

Since my system's DVB API is < 3.1, the lower define is executed - but
C doesn't like it when you're adding an int to an fe_type, and I can't
blame it. :-)

Changeset 11702 (only in svn-trunk) removed the offending code from
frequencytables.cpp, however I didn't test out whether I could get it
to compile with the rest of 0.20-fixes on my system. Instead I decided
to stick to 0.20 for the time being.

I opened a ticket for this: http://svn.mythtv.org/trac/ticket/4042

Hopefully, someone more familiar with the codebase can decide whether
it's possible to merge the updatd frequencytables.cpp into fixes.

Jens


More information about the mythtv-users mailing list