[PyQt] Next Releases
phil at riverbankcomputing.com
Wed Sep 10 15:52:16 BST 2014
On 10/09/2014 3:36 pm, Georg Brandl wrote:
> 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
>>> doesn't use the RTLD_GLOBAL flag (i.e. ExportExternalSymbolsHint in
>>> parlance). The libpyqt4.so designer plugin is loaded, and since it
>>> dynamically linked with libpython2.7, that one gets loaded too, but
>>> available for global symbol resolution.
>>> Now the sip.so extension is *not* linked with libpython2.7 (like all
>>> extension modules), so when it gets loaded with dlopen (by Python),
>>> can't find the symbols exported by the Python library. The old code
>>> enforced Python symbols to be global and available for resolution by
>>> the linker.
>> The previous behaviour has been restored in the current PyQt4 and
>> 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
> 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
> 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.
More information about the PyQt