Bug#964127: plplot: Please switch from sip4 to sip5

Rafael Laboissière rafael at debian.org
Tue Dec 1 17:02:47 GMT 2020


* Dmitry Shachnev <mitya57 at debian.org> [2020-11-30 18:50]:

> On Mon, Nov 30, 2020 at 02:25:43PM +0100, Rafael Laboissière wrote:
>
>> I have here:
>>
>>     $ dpkg -l pyqt5-dev | grep ^ii
>>     ii  pyqt5-dev      5.15.1+dfsg-2 all          Development files for PyQt5
>>     $ grep module-tags /usr/lib/python3/dist-packages/PyQt5/bindings/QtCore/QtCore.toml
>>     module-tags = ["Qt_5_14_0", "WS_X11"]
>>
>> Is that normal? AFAICT, 5.15.1+dfsg-2 is the latest version of pyqt5-dev…
>
> Oops, that is a bug. pyqt5-dev needs a rebuild against every new Qt version, 
> and apparently it did not happen when we updated to Qt 5.15.1.
>
> I will make a new upload today to fix it, and will also ask upstream whether 
> it's possible to avoid this somehow.

I tried to build PLplot with my changes for SIP5 and againts version 
5.15.2+dfsg-1 of pyqt5-dev.  It still fails with the error below.

Best

Rafael

================================================================

  make  -f bindings/qt_gui/pyqt5/CMakeFiles/plplot_pyqt5.dir/build.make bindings/qt_gui/pyqt5/CMakeFiles/plplot_pyqt5.dir/build
  make[3]: Entering directory '<build-path>'
  cd <build-path>/bindings/qt_gui/pyqt5 && /usr/bin/c++ -DPLPLOT_HAVE_CONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_SVG_LIB -DQT_WIDGETS_LIB -DUSINGDLL -Dplplot_pyqt5_EXPORTS -I/var/data/rlaboiss/debian/PKGS/plplot/plplot/include -I/var/data/rlaboiss/debian/PKGS/plplot/plplot/lib/qsastime -I/var/data/rlaboiss/debian/PKGS/plplot/plplot/lib/nistcd -I/var/data/rlaboiss/debian/PKGS/plplot/plplot/drivers -I<build-path> -I<build-path>/include -I<build-path>/lib/qsastime -I<build-path>/lib/nistcd -I/usr/include/python3.8 -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtSvg -isystem /usr/include/x86_64-linux-gnu/qt5/QtWidgets -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -isystem /usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -isystem /usr/include/x86_64-linux-gnu/qt5/QtPrintSupport -g -O2 -fdebug-prefix-map=/var/data/rlaboiss/debian/PKGS/plplot/plplot=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/octave-5.2.0/octave/.. -I/usr/include/octave-5.2.0/octave -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/octave-5.2.0/octave/.. -I/usr/include/octave-5.2.0/octave -fPIC -fvisibility=default -fPIC -o CMakeFiles/plplot_pyqt5.dir/sipplplot_pyqt5cmodule.cpp.o -c <build-path>/bindings/qt_gui/pyqt5/sipplplot_pyqt5cmodule.cpp
  In file included from /var/data/rlaboiss/debian/PKGS/plplot/plplot/bindings/qt_gui/pyqt5/plplot_pyqt5.sip:67:
  /var/data/rlaboiss/debian/PKGS/plplot/plplot/include/qt.h:359:5: warning: ‘template<class T> class QLinkedList’ is deprecated: Use std::list instead [-Wdeprecated-declarations]
    359 |     QLinkedList<BufferElement> m_listBuffer;     // Buffer holding the draw instructions
        |     ^~~~~~~~~~~
  In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qvarlengtharray.h:43,
                   from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:48,
                   from /usr/include/x86_64-linux-gnu/qt5/QtCore/QMetaType:1,
                   from <build-path>/bindings/qt_gui/pyqt5/sipAPIplplot_pyqt5.h:12,
                   from <build-path>/bindings/qt_gui/pyqt5/sipplplot_pyqt5cmodule.cpp:7:
  /usr/include/x86_64-linux-gnu/qt5/QtCore/qcontainerfwd.h:51:26: note: declared here
     51 | template <class T> class QLinkedList;
        |                          ^~~~~~~~~~~
  In file included from /var/data/rlaboiss/debian/PKGS/plplot/plplot/bindings/qt_gui/pyqt5/plplot_pyqt5.sip:67:
  /var/data/rlaboiss/debian/PKGS/plplot/plplot/include/qt.h:372:5: warning: ‘template<class T> class QLinkedList’ is deprecated: Use std::list instead [-Wdeprecated-declarations]
    372 |     QLinkedList<BufferElement>::const_iterator start_iterator;
        |     ^~~~~~~~~~~
  In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qvarlengtharray.h:43,
                   from /usr/include/x86_64-linux-gnu/qt5/QtCore/qmetatype.h:48,
                   from /usr/include/x86_64-linux-gnu/qt5/QtCore/QMetaType:1,
                   from <build-path>/bindings/qt_gui/pyqt5/sipAPIplplot_pyqt5.h:12,
                   from <build-path>/bindings/qt_gui/pyqt5/sipplplot_pyqt5cmodule.cpp:7:
  /usr/include/x86_64-linux-gnu/qt5/QtCore/qcontainerfwd.h:51:26: note: declared here
     51 | template <class T> class QLinkedList;
        |                          ^~~~~~~~~~~
  ./sipplplot_pyqt5cmodule.cpp:568:5: error: ‘SIP_ABI_MINOR_VERSION’ was not declared in this scope; did you mean ‘PY_MINOR_VERSION’?
    568 |     SIP_ABI_MINOR_VERSION,
        |     ^~~~~~~~~~~~~~~~~~~~~
        |     PY_MINOR_VERSION
  ./sipplplot_pyqt5cmodule.cpp: In function ‘PyObject* PyInit_plplot_pyqt5()’:
  ./sipplplot_pyqt5cmodule.cpp:663:53: error: ‘SIP_ABI_MAJOR_VERSION’ was not declared in this scope; did you mean ‘PY_MAJOR_VERSION’?
    663 |     if (sipExportModule(&sipModuleAPI_plplot_pyqt5, SIP_ABI_MAJOR_VERSION, SIP_ABI_MINOR_VERSION, 0) < 0)
        |                                                     ^~~~~~~~~~~~~~~~~~~~~
        |                                                     PY_MAJOR_VERSION
  ./sipplplot_pyqt5cmodule.cpp:663:76: error: ‘SIP_ABI_MINOR_VERSION’ was not declared in this scope; did you mean ‘PY_MINOR_VERSION’?
    663 |     if (sipExportModule(&sipModuleAPI_plplot_pyqt5, SIP_ABI_MAJOR_VERSION, SIP_ABI_MINOR_VERSION, 0) < 0)
        |                                                                            ^~~~~~~~~~~~~~~~~~~~~
        |                                                                            PY_MINOR_VERSION
  make[3]: *** [bindings/qt_gui/pyqt5/CMakeFiles/plplot_pyqt5.dir/build.make:96: bindings/qt_gui/pyqt5/CMakeFiles/plplot_pyqt5.dir/sipplplot_pyqt5cmodule.cpp.o] Error 1
  make[3]: Leaving directory '<build-path>'
  make[2]: *** [CMakeFiles/Makefile2:4052: bindings/qt_gui/pyqt5/CMakeFiles/plplot_pyqt5.dir/all] Error 2
  make[2]: *** Waiting for unfinished jobs....
  'plplot-5.15.0.pdf' successfully built
  make[3]: Leaving directory '<build-path>'
  [ 88%] Built target pdf_target
  make[2]: Leaving directory '<build-path>'
  make[1]: *** [Makefile:185: all] Error 2
  make[1]: Leaving directory '<build-path>'
  dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j2 "INSTALL=install --strip-program=true" returned exit code 2
  make: *** [debian/rules:47: binary] Error 25
  dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the debian-science-maintainers mailing list