On 20 Dec 2011, Bruce Dubbs said: > Calvin Morrison wrote: >> On 20 December 2011 12:21, Bruce Dubbs <bruce.dubbs@...> wrote: > >>> Trolltech did the separation in Qt4. Their major libraries are libQtCore, >>> libQtGui, libQtMultimedia.so, and libQtNetwork.so. The other libraries >>> essentially add on additional functionality. >>> >>> The same sort of thing could be done with Qt3, but I question the value. >>> If someone is building a new application, they would probably just build >>> it with Qt4. > >> some applications would load faster and/or use less memory because they >> aren't linking a giant so file and instead fewer smaller ones that they >> actually need > > LOL. The libraries you refer to are already in memory. They don't have > to be loaded again. That's what a shared library does. Even if they > weren't in memory, the system would have to be instrumented to measure > the change. It would be imperceptible to the user. It would use a bit less memory, and speed up startup a bit, because fewer relocations are required, and relocations necessarily require making the page containing the relocations private to that process, and writable. Even on a prelinked system, some memory would be saved, because two relocations are required per C++ class even when prelink is in use, and a split Qt would contain many fewer classes in the non-X-using part than exist in all of Qt now. (But despite that, you are surely right that the cost/benefit tradeoff is surely not worth it for Qt3.) -- NULL && (void)