[mythtv-users] GNU GCC/64-bit/and --enable-symbol-visibility (was Re: IMDB lookups cause crash)

Michael T. Dean mtdean at thirdcontact.com
Fri Dec 15 00:05:02 UTC 2006


On 12/14/2006 03:34 PM, Anduin Withers wrote:
> You can disable DRI, you can also be the very first one to confirm if the
> symbol visibility option in SVN fixes it (requires gcc 4).
>   
Anduin, although this doesn't answer your question, I can provide a bit 
of feedback about the --enable-symbol-visibility option.

The option breaks compiles on 64-bit platforms (at least x86-64) running 
FSF GCC 4.1.0 due to a bug in GCC (which also affects Mozilla builds).  
The bug was fixed in FSF GCC 4.1.1 (and backported to GCC 4.0.4).

Another bug (which causes similar compile failures (in MythTV and 
Mozilla), but is a completely distinct bug) was not fixed.  So, the 
option also breaks compiles on 64-bit (x86-64) platforms running FSF GCC 
4.1.1.  GCC devs have said the fix for the second bug is too large to be 
placed in the FSF 4.0/4.1 branches, so FSF GCC will not be able to 
compile Myth with --enable-symbol-visibility until GCC 4.2.

Note, though, that the same does /not/ apply to RH GCC 4.1.1.  Red Hat 
backported the fix to their GCC 4.1 branch, so RH GCC 4.1.1 should be 
able to compile MythTV with --enable-symbol-visibility on 64-bit 
(x86-64) platforms.  I have no idea what other distros are patching 
their GCC's.  I'm guessing--due to the lack of comments/questions about 
the issue--that most distros are patching their compilers.  Then again, 
it may just be that users may not have realized the benefits the option 
can bring, yet.

I'd be happy to provide more information/compile logs/whatever, but I'm 
pretty sure there's nothing you can do about it (other than what Mozilla 
is now doing--detecting the bug during configure and disabling symbol 
visibility, if present--which is probably not worth the bytes in 
configure).  The primary reason I'm even mentioning it is so that you 
don't waste a lot of time trying to debug issues if anyone (else) ever 
tries the extremely-nice symbol visibility enhancements you went to the 
trouble of coding for us and reports any bugs.

BTW, my 32-bit machines (which both have NVIDIA cards, though, so can't 
be used to answer your question about the ATI drivers) are happily 
running MythTV compiled with --enable-symbol-visibility without any issues.

Thanks,
Mike

See also:

Bug 1:
http://benjamin.smedbergs.us/blog/2005-10-27/gcc-40-workaround/
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20297

Bug 2:
http://benjamin.smedbergs.us/blog/2006-03-28/gcc-and-visibility-one-step-forward-hit-a-brick-wall/
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26905



More information about the mythtv-users mailing list