KDE_ENABLE_HIDDEN_VISIBILITY - Debian

This is a discussion on KDE_ENABLE_HIDDEN_VISIBILITY - Debian ; In rebuilding a number of KDE packages for gcc 4. It would appear that there is an issue with KDE_ENABLE_HIDDEN_VISIBILITY, which is generally swtiched on in configure.in.in. The short fix appears to delete/comment out this switch as there are issues ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: KDE_ENABLE_HIDDEN_VISIBILITY

  1. KDE_ENABLE_HIDDEN_VISIBILITY

    In rebuilding a number of KDE packages for gcc 4. It would appear that
    there is an issue with KDE_ENABLE_HIDDEN_VISIBILITY, which is generally
    swtiched on in configure.in.in.

    The short fix appears to delete/comment out this switch as there are
    issues with gcc 4.

    Thought I would post this here as it took me a while looking on upstream
    sites to find it if people are having issues building. Errors are
    missing typeinfo...

    Has anyone else seen this and should be we doing something about it
    across the Debian board?

    Mark


    --
    To UNSUBSCRIBE, email to debian-kde-REQUEST@lists.debian.org
    with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

  2. Re: KDE_ENABLE_HIDDEN_VISIBILITY

    On August 20, 2005 16:23, Mark Purcell wrote:
    > In rebuilding a number of KDE packages for gcc 4. It would appear that
    > there is an issue with KDE_ENABLE_HIDDEN_VISIBILITY, which is generally
    > swtiched on in configure.in.in.
    >
    > The short fix appears to delete/comment out this switch as there are
    > issues with gcc 4.
    >
    > Thought I would post this here as it took me a while looking on upstream
    > sites to find it if people are having issues building. Errors are
    > missing typeinfo...
    >
    > Has anyone else seen this and should be we doing something about it
    > across the Debian board?


    Yes, thanks for bringing this up. Everyone who maintains a KDE package,
    please read on.

    GCC 4.0 has introduced a nifty feature, symbol visibility hiding, that
    promises to improve the performance of KDE applications, particularly load
    times (it does other things, but this is probably why people have heard of
    it). 'man gcc' has a good paragraph on it.

    KDE 3.4 has acquired a measure of support for this feature, as have a great
    many unofficial KDE applications, and those that haven't yet probably will
    soon.

    For anything based on Qt3 (and therefore everything KDE) to work properly
    with this feature, Qt must be specially patched. The Qt3 presently in Sid
    does not have this patch. Since the new visibility feature is still causing
    a lot of problems (build issues and strange PIC/non-PIC head-scratchers),
    we don't plan to enable its use in the immediate future. Perhaps KDE 3.5
    will improve matters. Please note that even if/when Qt3 does acquire
    support, you should not immediately assume that it is time to enable this
    feature for your packages, since you'll want to wait for KDE (or at least
    kdelibs) to be rebuilt to make sure all is well, and then you'll still have
    to make a judgment call about the state of your own packages.

    The latest versions of the KDE build infrastructure (the admin folder,
    basically) check whether or not the Qt present on the system is patched to
    support the new visibility feature. Other versions of the build system
    either don't have this check, or have a broken check. I've never seen
    a ./configure option to enable or disable the visibility feature, though
    you may very well get ./configure output telling you whether of not the
    visibility support has been enabled or disabled. It is therefore up to all
    maintainers of KDE packages to examine his or her own packages carefully,
    and if necessary to rip out the relevant parts from acinclude.m4.in and/or
    configure.in.in. Then you must regenerate the autotool build files manually
    ("make -f admin/Makefile.common dist") or ensure that they get regenerated
    at build time. You'll know if your package is attempting to build with this
    feature enabled if the build logs contain the following flags:
    "-fvisibility=hidden" and "-fvisibility-inlines-hidden".

    The core KDE packages of the upcoming gcc-4.0 generation are patched to
    ensure that the symbol visibility feature is not used. This very simple
    patch, for those interested in an example of how we managed, is available
    in the pkg-kde alioth subversion repository, at
    branches/kde-3.4.0/common-patches/08_disable-visibility.diff.

    Cheers and good luck,
    Christopher Martin

    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.4.1 (GNU/Linux)
    Comment: Signed by Christopher Martin

    iD8DBQBDB6WWU+gWW+vtsysRAoLeAJ9Gxu679n0evxEX2aGwW9 R332+Z6gCfZi48
    injuYrgaVaJTlERK2hhSWs4=
    =6uda
    -----END PGP SIGNATURE-----


+ Reply to Thread