[PyQt] Next Releases
Georg Brandl
g.brandl at gmx.net
Wed Sep 10 15:36:02 BST 2014
On 09/10/2014 10:05 AM, Phil Thompson wrote:
>> Hmm, as far as I can understand the thing after looking into "man
>> dlopen" a
>> bit: the designer loads its plugins with QPluginLoader, which by
>> default
>> doesn't use the RTLD_GLOBAL flag (i.e. ExportExternalSymbolsHint in Qt
>> parlance). The libpyqt4.so designer plugin is loaded, and since it is
>> dynamically linked with libpython2.7, that one gets loaded too, but is
>> not
>> available for global symbol resolution.
>>
>> Now the sip.so extension is *not* linked with libpython2.7 (like all
>> Python
>> extension modules), so when it gets loaded with dlopen (by Python), the
>> linker
>> can't find the symbols exported by the Python library. The old code
>> basically
>> enforced Python symbols to be global and available for resolution by
>> the linker.
>
> The previous behaviour has been restored in the current PyQt4 and PyQt5
> snapshots. A little testing would be appreciated.
Thanks Phil, the designer integration now works for me again.
However, with the snapshot I get a traceback loading an .ui file at runtime.
It appears to be a simple typo, so I won't give the full trace:
File "/usr/lib64/python2.7/site-packages/PyQt4/uic/uiparser.py", line 430, in
createSpacer
lp = elem.attrib['layout--position']
KeyError: 'layout--position'
A similar change in the 4.11.1 -> snapshot diff in uiparser.py:515
suggests this should be 'layout-position', and making that change I see
no other immediate problem with my app.
cheers,
Georg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: OpenPGP digital signature
URL: <http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20140910/42e8c50a/attachment.sig>
More information about the PyQt
mailing list