[Kde-pim] Using gold linker as default
Tobias Koenig
tokoe at kde.org
Thu Jun 24 12:15:35 BST 2010
Hej,
I'd like to propose that all KDE PIM developers use the gold linker instead of
the GNU linker for development.
Pros:
The gold linker is much faster than the GNU linker, which especially in distributed
compiliation environments improves the overall compile time in the final linking stage
on the local machine (hint: try to link QtWebKit with debug symbols with gold and GNU ld to
see the difference in performance and memory consumption)
The gold linker is more restrictive when it comes to linking. You have to give the libraries
you have to link to explicitly. This is a great help for the MacOSX (and Windows?) developers, since
that's the default behaviour for the linkers on these systems, so they don't have to fix
our CMakeLists.txt over and over again. IIRC also packagers like the explicit way of defining
the libraries (can't remember why though).
Cons:
The gold linker only supports the ELF format, so if you develop on a non-Linux system using it
might be no option (then use GNU ld as usual)
The gold linker has problems with compiling kernel code or modules, so you should switch linkers
before compiling a kernel (however I doubt many KDE PIM developers compiler their own kernel).
You can setup gold quite easily, under Debian there is the package binutils-gold available which
just has to be installed. Other distributions offer such a package as well (no idea about the name though).
Comments?
Ciao,
Tobias
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20100624/17ffc4ff/attachment.sig>
-------------- next part --------------
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/
More information about the kde-pim
mailing list