Mailing List Archive

DVB symbol errors with gcc 8.3
As described in:

https://bugs.gentoo.org/show_bug.cgi?id=683280

Compiling mythtv with gcc 8.3 results in an error when DVB is not
enabled:

/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/../../../../x86_64-pc-linux-gnu/bin/ld:
../../libs/libmythtv/libmythtv-29.so: undefined reference to
`DVBChannel::Open(DVBChannel*)

It appears this is caused by the unconditional include of dvbchannel.h
by mythtv/libs/libmythtv/channelscan/channelscanner.cpp, that include
file defines the DVBChannel class, and for some reason with gcc 8.3 that
now causes a symbol reference to some of the class methods. I'm not sure
if that's a compiler bug, or just implementation dependent behavior.

In any case, guarding that include with an "#ifdef USING_DVB" resolves
the problem. Assuming this isn't a gcc bug (or even if it is, not
defining the dvb classes when you're not using it seems a good idea
regardless) could somebody commit a change like this or something
equivilent?

Thanks much...
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: DVB symbol errors with gcc 8.3 [ In reply to ]
Yes I will have a look at it, although I can only test with gcc 9.1.

Klaas.
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: DVB symbol errors with gcc 8.3 [ In reply to ]
Done in master, 30-fixes and 29-fixes.
Thanks for reporting the bug and the fix.

Klaas.
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: DVB symbol errors with gcc 8.3 [ In reply to ]
On Thu, Jul 25, 2019 at 12:04:00PM +0200, Klaas de Waal wrote:
> Done in master, 30-fixes and 29-fixes.
> Thanks for reporting the bug and the fix.

Cool, thank you for fixing it so quickly.
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: DVB symbol errors with gcc 8.3 [ In reply to ]
unsubscribe

On Thu, Jul 25, 2019 at 1:24 AM Paul B. Henson <henson@acm.org> wrote:

> As described in:
>
> https://bugs.gentoo.org/show_bug.cgi?id=683280
>
> Compiling mythtv with gcc 8.3 results in an error when DVB is not
> enabled:
>
>
> /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/../../../../x86_64-pc-linux-gnu/bin/ld:
> ../../libs/libmythtv/libmythtv-29.so: undefined reference to
> `DVBChannel::Open(DVBChannel*)
>
> It appears this is caused by the unconditional include of dvbchannel.h
> by mythtv/libs/libmythtv/channelscan/channelscanner.cpp, that include
> file defines the DVBChannel class, and for some reason with gcc 8.3 that
> now causes a symbol reference to some of the class methods. I'm not sure
> if that's a compiler bug, or just implementation dependent behavior.
>
> In any case, guarding that include with an "#ifdef USING_DVB" resolves
> the problem. Assuming this isn't a gcc bug (or even if it is, not
> defining the dvb classes when you're not using it seems a good idea
> regardless) could somebody commit a change like this or something
> equivilent?
>
> Thanks much...
> _______________________________________________
> mythtv-dev mailing list
> mythtv-dev@mythtv.org
> http://lists.mythtv.org/mailman/listinfo/mythtv-dev
> http://wiki.mythtv.org/Mailing_List_etiquette
> MythTV Forums: https://forum.mythtv.org
>