[Development] OS X plugin naming bug
jake.petroules at petroules.com
Fri Nov 14 16:58:43 CET 2014
> On Nov 14, 2014, at 7:44 AM, Morten Johan Sørvig <morten.sorvig at digia.com> wrote:
>> On 14 Nov 2014, at 02:58, Hanspeter Niederstrasser <fink at snaggledworks.com> wrote:
>> On OS X, Qt is building plugins as dynamic libraries, instead of
>> bundles, which is the more appropriate format for the platform. This was
>> filed as QTBUG 2227 six years ago, but it was marked as closed without
>> any work done on it, even though there was a patch listed. For the Fink
>> package manager, we have been successful in locally patching the Qt4 and
>> Qt5 sources to correct the plugin file type and extension.
>> However, when I tried to start building the KDE5 frameworks on OS X, a
>> new related issue appeared whereas the Qt5 cmake files referenced the
>> plugin with the original .dylib extension and not the patched .so
>> extension that the physical file is now using (this is all documented in
>> QTBUG 2227). I have not been able to find the code that generates the
>> .cmake files to figure out why it is not honoring the file extension
>> change. It was suggested on IRC that I reach out to the qt-dev mailing
>> list to get a fresh look at QTBUG 2227. Thank you for your help,
> We could add a fink mkspec, where you can configure the plugin file type and extension, effectively upstreaming your patches.
> Or are you saying that the only useful action is to have Qt change the default plugin extension? That would be difficult, at least in the short term where there are already couple of build system changes in progress (code signing updates, @rpath transition).
> cmake would have to be patched in both cases of course.
> Development mailing list
> Development at qt-project.org <mailto:Development at qt-project.org>
> http://lists.qt-project.org/mailman/listinfo/development <http://lists.qt-project.org/mailman/listinfo/development>
Yeah, Qt plugins should absolutely be packaged as bundles (loadable modules). I’ve mentioned this before; I think this is a good next aim for 5.5. Shouldn’t be much more work than changing the extension from .dylib to .bundle and adding the -bundle linker flag, though they should be actual CFBundles too, not just flat files. I reopened the issue.
Jake Petroules - jake.petroules at petroules.com
Chief Technology Officer - Petroules Corporation
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Development