[prev in list] [next in list] [prev in thread] [next in thread]
List: pykde
Subject: Re: [PyQt] =?utf-8?q?Compiler_error_using_mingw_=3A_invalid_new-expr?=
From: Erik Janssens <erik.janssens () conceptive ! be>
Date: 2018-12-03 8:34:06
Message-ID: bae627be-7a3b-3a41-b3bf-ecab9e4f7c9a () conceptive ! be
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
Hello Phil,
I was able to work around this, by changing configure.py of PyQt, and
modifying line 2456 from :
py.platform == 'win32'
to
py.platform.startswith('win32')
since the platform is 'win32-g++'.
Grts,
Erik
On 02.12.18 20:37, Erik Janssens wrote:
> Hi,
>
> I'm trying to cross compile PyQt using mingw 32bit.
>
> - Using Qt 5.11.2 cross compiled with mingw
> - Using sip 4.19.13 cross compiled and native compiled to have sip on
> the path
> - Using PyQt 5.11.3
>
> I've built sip using the qmake chain, with these options :
>
> python configure.py --use-qmake --target-py-version=3.4.4
> --sysroot=/home/tw55413/workspaces/qt/sip/ -p win32-g++
> --configuration config.txt --sip-module PyQt5.sip --no-tools
> LIBS=-lpython34 -d /home/tw55413/workspaces/qt/sip-install/
> --no-stubs --no-dist-info
>
>
> And configured PyQt with :
>
> python3 configure.py
> --destdir=/home/tw55413/workspaces/qt/sip-install/
> --no-designer-plugin --no-dist-info --no-docstrings
> --no-python-dbus --no-sip-files --no-stubs --no-tools --qmake
> /home/tw55413/workspaces/qt/mingw_64/bin/qmake --sip-incdir
> /home/tw55413/workspaces/qt/sip/sip-4.19.13/siplib/
> --configuration config.txt --target-py-version 3.4.4 --verbose
> LIBS+=-lpython34 LIBS+=-L/home/tw55413/workspaces/qt/python/libs
> INCLUDEPATH+=/home/tw55413/workspaces/qt/sip/sip-4.19.13/siplib/
> --sip
> /home/tw55413/workspaces/qt/sip/sip_native/sip-4.19.13/sipgen/sip
> QMAKE_CXXFLAGS+=-D_hypot=hypot
>
> Detection of the Qt libraries looks good
>
> After running 'make' the first few files compile, but then I get
> a compile error :
>
> /home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore/sipQtCoreQAbstractEventDispatcher.cpp:
> In function ‘void*
> init_type_QAbstractEventDispatcher(sipSimpleWrapper*, PyObject*,
> PyObject*, PyObject**, PyObject**, PyObject**)’:
> /home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore/sipQtCoreQAbstractEventDispatcher.cpp:1137:56:
>
> error: invalid new-expression of abstract class type
> ‘sipQAbstractEventDispatcher’
> sipCpp = new sipQAbstractEventDispatcher(a0);
> ^
> /home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore/sipQtCoreQAbstractEventDispatcher.cpp:97:7:
>
> note: because the following virtual functions are pure within
> ‘sipQAbstractEventDispatcher’:
> class sipQAbstractEventDispatcher : public ::QAbstractEventDispatcher
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from
> /home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/sip/QtCore/qabstracteventdispatcher.sip:26:0:
>
> ../../../mingw_64/include/QtCore/qabstracteventdispatcher.h:100:18:
> note: virtual bool
> QAbstractEventDispatcher::registerEventNotifier(QWinEventNotifier*)
> virtual bool registerEventNotifier(QWinEventNotifier
> *notifier) = 0;
> ^~~~~~~~~~~~~~~~~~~~~
> ../../../mingw_64/include/QtCore/qabstracteventdispatcher.h:101:18:
> note: virtual void
> QAbstractEventDispatcher::unregisterEventNotifier(QWinEventNotifier*)
> virtual void unregisterEventNotifier(QWinEventNotifier
> *notifier) = 0;
> ^~~~~~~~~~~~~~~~~~~~~~~
> make[2]: *** [Makefile.Release:1563:
> release/sipQtCoreQAbstractEventDispatcher.o] Error 1
> make[2]: Leaving directory
> '/home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore'
> make[1]: *** [Makefile:36: release] Error 2
> make[1]: Leaving directory
> '/home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore'
> make: *** [Makefile:42: sub-QtCore-make_first-ordered] Error 2
>
>
> Any ideas ?
>
> Thanks,
>
> Erik
[Attachment #5 (text/html)]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
Hello Phil,<br>
<br>
I was able to work around this, by changing configure.py of PyQt,
and<br>
modifying line 2456 from :<br>
<br>
py.platform == 'win32' <br>
<br>
to<br>
<br>
py.platform.startswith('win32')<br>
<br>
since the platform is 'win32-g++'.<br>
<br>
Grts,<br>
<br>
Erik<br>
<br>
<div class="moz-cite-prefix">On 02.12.18 20:37, Erik Janssens wrote:<br>
</div>
<blockquote type="cite"
cite="mid:2bb7023a-2072-81b1-33a7-4cddb8100f24@conceptive.be">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
Hi,<br>
<br>
I'm trying to cross compile PyQt using mingw 32bit.<br>
<br>
- Using Qt 5.11.2 cross compiled with mingw<br>
- Using sip 4.19.13 cross compiled and native compiled to have sip
on the path<br>
- Using PyQt 5.11.3<br>
<br>
I've built sip using the qmake chain, with these options :<br>
<br>
<blockquote>python configure.py --use-qmake
--target-py-version=3.4.4
--sysroot=/home/tw55413/workspaces/qt/sip/ -p win32-g++
--configuration config.txt --sip-module PyQt5.sip --no-tools
LIBS=-lpython34 -d /home/tw55413/workspaces/qt/sip-install/
--no-stubs --no-dist-info<br>
</blockquote>
<br>
And configured PyQt with :<br>
<br>
<blockquote>python3 configure.py
--destdir=/home/tw55413/workspaces/qt/sip-install/
--no-designer-plugin --no-dist-info --no-docstrings
--no-python-dbus --no-sip-files --no-stubs --no-tools --qmake
/home/tw55413/workspaces/qt/mingw_64/bin/qmake --sip-incdir
/home/tw55413/workspaces/qt/sip/sip-4.19.13/siplib/
--configuration config.txt --target-py-version 3.4.4 --verbose
LIBS+=-lpython34 LIBS+=-L/home/tw55413/workspaces/qt/python/libs
INCLUDEPATH+=/home/tw55413/workspaces/qt/sip/sip-4.19.13/siplib/
--sip
/home/tw55413/workspaces/qt/sip/sip_native/sip-4.19.13/sipgen/sip
QMAKE_CXXFLAGS+=-D_hypot=hypot<br>
<br>
Detection of the Qt libraries looks good<br>
<br>
After running 'make' the first few files compile, but then I
get a compile error :<br>
<br>
/home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore/sipQtCoreQAbstractEventDispatcher.cpp:
In function ‘void*
init_type_QAbstractEventDispatcher(sipSimpleWrapper*, PyObject*,
PyObject*, PyObject**, PyObject**, PyObject**)’:<br>
/home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore/sipQtCoreQAbstractEventDispatcher.cpp:1137:56:
error: invalid new-expression of abstract class type
‘sipQAbstractEventDispatcher’<br>
sipCpp = new sipQAbstractEventDispatcher(a0);<br>
^<br>
/home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore/sipQtCoreQAbstractEventDispatcher.cpp:97:7:
note: because the following virtual functions are pure within
‘sipQAbstractEventDispatcher’:<br>
class sipQAbstractEventDispatcher : public
::QAbstractEventDispatcher<br>
^~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
In file included from
/home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/sip/QtCore/qabstracteventdispatcher.sip:26:0:<br>
../../../mingw_64/include/QtCore/qabstracteventdispatcher.h:100:18:
note: virtual bool
QAbstractEventDispatcher::registerEventNotifier(QWinEventNotifier*)<br>
virtual bool registerEventNotifier(QWinEventNotifier
*notifier) = 0;<br>
^~~~~~~~~~~~~~~~~~~~~<br>
../../../mingw_64/include/QtCore/qabstracteventdispatcher.h:101:18:
note: virtual void
QAbstractEventDispatcher::unregisterEventNotifier(QWinEventNotifier*)<br>
virtual void unregisterEventNotifier(QWinEventNotifier
*notifier) = 0;<br>
^~~~~~~~~~~~~~~~~~~~~~~<br>
make[2]: *** [Makefile.Release:1563:
release/sipQtCoreQAbstractEventDispatcher.o] Error 1<br>
make[2]: Leaving directory
'/home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore'<br>
make[1]: *** [Makefile:36: release] Error 2<br>
make[1]: Leaving directory
'/home/tw55413/workspaces/qt/pyqt/PyQt5_gpl-5.11.3/QtCore'<br>
make: *** [Makefile:42: sub-QtCore-make_first-ordered] Error 2<br>
</blockquote>
<br>
Any ideas ?<br>
<br>
Thanks,<br>
<br>
Erik<br>
</blockquote>
<br>
</body>
</html>
[Attachment #6 (text/plain)]
_______________________________________________
PyQt mailing list PyQt@riverbankcomputing.com
https://www.riverbankcomputing.com/mailman/listinfo/pyqt
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic