main TODO file ?

Thiago Macieira thiago at kde.org
Mon Oct 17 17:44:34 CEST 2005


Stephan Kulow wrote:
>Am Montag, 17. Oktober 2005 11:55 schrieb Thiago Macieira:
>> I can think of only one:
>> - ability to link to static libraries' dependencies
>>
>> And personally I think that's more trouble than it's worth, so I'd
>> like to remove that ability. However, last time I used mingw/cygwin, I
>> had to give an incredibly long list of libraries for the simplest
>> program to link (because linking to .dlls meant linking to static
>> libraries). Has that weird problem been fixed in the last 4 years?
>
>Replace the static with "uninstalled shared" and you have another one.
>And that's exactly what I'm talking about. Getting KDEUI into every
> target that requires KIO, or libkcal into every target that requires
> libkdepim.

I thought of that just as I was getting ready to leave, so I couldn' t 
reply and add it.

Yes, the .la files store the "relink_command" which allows a program to be 
relinked upon execution.

However, since this can only happen inside an uninstalled tree, 
scons/bksys will still be available, meaning this could go through the 
Python scripts. In fact, I'd go as far as saying this is a required 
feature for scons, if it's not present already.

On ELF platforms it's as easy as setting the LD_LIBRARY_PATH environment 
variable correctly prior to execution (provided that the program was 
linked with --enable-new-dtags).

In fact, the sole reason --enable-new-dtags isn't on by default, IIRC, is 
because we couldn't get libtool to behave and not add /usr to the list of 
rpath targets.[1]

The reason I'd like to get rid of .la files completely is that they impose 
dependencies that are not needed both in link-time and in run-time. 
Package managers should even consider the contents of .la files for 
automatic dependency tracking.

[1] With --enable-new-dtags, we had enabled --as-needed, which means that 
unnecessary libraries were dropped from the NEEDED list in the ELF 
header. In turn, that meant that some wrong libraries were loaded when 
uninstalled programs were relinked, and, as far as I remember, it was 
libtool's fault for adding paths like /usr to the RUNPATH list (I 
couldn't get it to behave correctly).
-- 
  Thiago Macieira  -  thiago (AT) macieira.info - thiago (AT) kde.org
    PGP/GPG: 0x6EF45358; fingerprint:
    E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358

2. Tó cennan his weorc gearu, ymbe se circolwyrde, wearð se cægbord and se 
leohtspeccabord, and þa mýs cómon lator. On þone dæg, he hine reste.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20051017/ff5a12be/attachment.pgp


More information about the Kde-buildsystem mailing list