[PyQt] PyQt5 5.7.1 Bug: debug build on Windows broken
Hans-Peter Jansen
hpj at urpla.net
Tue Jan 17 13:00:09 GMT 2017
On Dienstag, 17. Januar 2017 12:01:14 Phil Thompson wrote:
> On 16 Jan 2017, at 9:44 pm, Mathias Born <mathias.born at gmx.de> wrote:
> >
> > It would be nice if there were an option to disable the use of the limited
> > API for
> > release builds.
>
> I've added a --link-full-dll option to configure.py to force the full API
> DLL to be linked. You should only need --debug if you want to build debug
> versions of the PyQt modules.
Phil, please keep in mind, that *many* Linux distributions just build debug
versions of *all* packages in order to maintain the symbol tables.
The build process strips the symbol tables from binaries later on, and
packages them separately in debug info (and debug source) packages.
If you debug a crash with gdb, it lists all debug info packages, that needs be
be installed for a full backtrace with symbols.
At openSUSE, we already patch configure.py to remove the *implicit* qml_debug
flag, since enabling this option has security implications (in that it opens a
local network port on the host):
Index: b/configure.py
===================================================================
--- a/configure.py
+++ b/configure.py
@@ -2243,7 +2243,7 @@ def pro_add_qt_dependencies(target_confi
pro_lines.append('QT += %s' % ' '.join(add))
pro_lines.append(
- 'CONFIG += %s' % ('debug qml_debug' if debug else 'release'))
+ 'CONFIG += %s' % ('debug' if debug else 'release'))
if metadata.cpp11:
pro_lines.append('CONFIG += c++11')
It might be worth to think about a configure option like --keep-symbols, that
builds release versions and just avoids stripping the symbol table, but that
might interfere with Qt's idea of to strip or not to strip...
Cheers,
Pete
More information about the PyQt
mailing list