[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Base X11 libraries cleanup

Ideally, all libraries should report zero unused direct dependencies when inspected with ldd -r -u. Although in some sense unused libraries are harmless, they do put needless pressure on the kernel's VM since all processes linked with the affected libraries have to map many more files, and in principle you can get unexpected behaviour when symbols don't resolve the way you expect due to namespace collisions.

Several of the core X libraries fail this, for not particularly good reasons. I've fixed most of them by now, but there's one or two stragglers still.

The side effect of this is that the culled libraries will not be included in the linker search scope for any libraries or applications above them in the stack. For example, libXaw no longer links against libSM, so if your application linked against libXaw and not libSM, but used symbols from libSM, it may now fail at runtime claiming that some symbols could not be resolved. If this happens, the affected package needs to be fixed to link against all appropriate libraries directly.

I doubt anyone will actually run into that, but I wanted to give a heads up in case it does happen.

(Ideally we should be able to do this for the entire OS.  Baby steps.)

- ajax

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]