[Interest] When does Qt load its plugins?
thiago.macieira at intel.com
Wed Jul 13 20:36:51 CEST 2016
Em quarta-feira, 13 de julho de 2016, às 20:14:06 PDT, Elvis Stansvik
> Alright, I sort of suspected that was the case. But I realize now that
> it's much better I read up on what each plugin does and determine if I
> need it, instead of trying to deduce it from stracing.
Another detail about strace: the plugins may be scanned for metadata very
early on, much earlier than when they're actually loaded. And even those that
are loaded may never be actually used, like some image formats.
You can use QT_DEBUG_PLUGINS=1 to get some debugging output from QLibrary
about whether it's scanning and which ones it actually loads. You can also use
LD_DEBUG=libs (or "files") to get the Linux dynamic loader to tell you what it
is really loading, and even why. Though the "why" is useless for plugins
loaded via QLibrary, because they will all show up as "loaded by QtCore".
You may be able to detect an open(2) call by QLibrary vs an open(2) call by
ld-linux.so in your strace by the flags that each one uses or the calls done
immediately after. Exercise left to the reader.
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
More information about the Interest