[Development] Explicit linking vs dlopen/dlsym

Allan Sandfeld Jensen kde at carewolf.com
Sun Nov 23 19:55:53 CET 2014


On Sunday 23 November 2014, Thiago Macieira wrote:
> On Sunday 23 November 2014 11:53:46 Allan Sandfeld Jensen wrote:
> > QtWebKit and QtWebEngine does not support linking directly to libudev,
> > but they will only try to dlopen libudev.so.1 or libudev.so.0 in that
> > order, and being major version if a libudev.so.2 is made it can
> > co-exists with libudev.so.1, this will in fact work more smoothly than
> > if you had direct linking.
> 
> I don't see why it would be more smooth. Direct linking in a distribution
> would ensure that the dependency is never missing. There would never be the
> case when the major version revs but the dependent lib does not get
> rebuild.
> 
The difference is with dlopen we can support more than one major version with 
the same binary making it possible to upgrade udev for instance without having 
to upgrade all of Qt at the same time. In this case it doesn't matter that 
much, but dlopen can allow for more painless upgrading for a rolling distro. 
Imagine if libGL wasn't dlopen'ed, we don't want to update Qt binaries every 
time somebody updates their graphics driver.

`Allan



More information about the Development mailing list