[Development] QtMultimedia and Musepack
Thiago Macieira
thiago.macieira at intel.com
Tue Aug 26 18:38:35 CEST 2014
On Tuesday 26 August 2014 10:27:52 Allan Sandfeld Jensen wrote:
> Well. That would the safe way, and we should keep that in mind for Qt6, but
> I believe with symbol versioning it can be done without breaking ABI,
> assuming it works as advertised. The libraries would export all symbols as
> both their normal form and with @Qt_5 or @Qt_4 added. The libraries would
> at link time remember which the version suffix they linked against, and
> prefer that symbol at runtime linking. This means the duplicate non
> versioned symbol shouldn't cause any issues.
> I haven't tried, and some information I found about it, seems to suggest it
> can run into bugs in ld.so.
We can do that, but that doesn't solve the problem. It just adds more work.
We need a way to do this in such a way that the symbols don't conflict at
runtime. But by keeping binary compatibility, we'll have two libraries
providing _ZN12QApplication16staticMetaObjectE (for example): libQtGui.so.4
and libQt5Widgets.so.5.
The only way to do this is to make sure the symbol we provide is unique and
won't conflict.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
More information about the Development
mailing list