[PyQt] PyQt4: compilation error with sip 4.19.14: convert ‘std::nullptr_t’ to ‘int’ in initialization

Phil Thompson phil at riverbankcomputing.com
Tue Feb 19 12:32:42 GMT 2019


On 18 Feb 2019, at 8:12 pm, Alexei Colin <ac at alexeicolin.com> wrote:
> 
> Hi, build of PyQt4 fails with sip 4.19.14:
> 
>    g++ -c -pipe -fno-exceptions -march=x86-64 -mtune=generic -O2 -pipe
>    -fstack-protector-strong -fno-plt -Wall -W -D_REENTRANT -fPIC
>    -DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_NO_DEBUG -DQT_PLUGIN
>    -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I.
>    -I/usr/include/qt4/QtCore -I/usr/include/qt4 -I.
>    -I/usr/include/python3.7m -I../qpy/QtCore -I. -o
>    sipQtCoreQAbstractTransition.o sipQtCoreQAbstractTransition.cpp
>    /home/col/.cache/pikaur/build/pyqt4/src/PyQt4_gpl_x11-4.12.3/QtCore/sipQtCoreQAbstractTransition.cpp:812:1:
>    error: cannot convert ‘std::nullptr_t’ to ‘int’ in initialization
> 
> This is on Arch Linux, gcc 8.2.1, sip.h from sip 4.19.14.
> 
> This ugly workaround to edit the generated code gets rid of the error:
> 
>    find . -type f -name '*.cpp' -exec sed -i 's/{SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR}/{SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, 0}/g' {} \;
> 
> Possibly related:
> 
> http://python.6.x6.nabble.com/PATCH-1-5-Add-SIP-NULLPTR-SIP-OVERRIDE-compatibility-macros-td5240856.html
> 
> Just reporting so that this may be fixed in the next release. Thanks.

Should be fixed (but untested) with tonight's sip snapshot.

Thanks,
Phil



More information about the PyQt mailing list