Control: tags -1 + patch
On Tue, 19 Jan 2016 20:25:00 -0800 Martin Michlmayr <tbm@hpe.com> wrote:
> Package: smokeqt
> Version: 4:4.14.3-1
> Severity: important
> User: debian-gcc@lists.debian.org
> Usertags: ftbfs-gcc-6
>
> This package fails to build with GCC 6. GCC 6 has not been released
> yet, but it's expected that GCC 6 will become the default compiler for
> stretch.
>
> Note that only the first error is reported; there might be more. You
> can find a snapshot of GCC 6 in experimental. To build with GCC 6,
> you can set CC=gcc-6 CXX=g++-6 explicitly.
>
> You may be able to find out more about this issue at
> https://gcc.gnu.org/gcc-6/changes.html
>
> > sbuild (Debian sbuild) 0.67.0 (26 Dec 2015) on dl580gen9-02.hlinux
> ...
> > cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtscript && /usr/bin/cmake -E cmake_link_script CMakeFiles/smokeqtscript.dir/link.txt --verbose=1
> > /usr/bin/c++ -fPIC -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wno-deprecated-declarations -Wl,-z,relro -shared -Wl,-soname,libsmokeqtscript.so.3 -o libsmokeqtscript.so.3.0.0 CMakeFiles/smokeqtscript.dir/smokedata.cpp.o CMakeFiles/smokeqtscript.dir/x_1.cpp.o ../qtcore/libsmokeqtcore.so.3.0.0 -lQtCore -lQtScript -lsmokebase -Wl,-rpath,/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtcore:
> > cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtscript && /usr/bin/cmake -E cmake_symlink_library libsmokeqtscript.so.3.0.0 libsmokeqtscript.so.3 libsmokeqtscript.so
> > make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
> > [ 30%] Built target smokeqtscript
> > /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtdbus/x_1.cpp:1594:7: error: deleted function 'virtual __smokeqtdbus::x_QDBusConnectionInterface::~x_QDBusConnectionInterface()'
> > class x_QDBusConnectionInterface : public QDBusConnectionInterface {
> > ^~~~~~~~~~~~~~~~~~~~~~~~~~
> >
> > In file included from /usr/include/qt4/QtDBus/QtDBus:8:0,
> > from /<<PKGBUILDDIR>>/qtdbus/qtdbus_includes.h:2,
> > from /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtdbus/x_1.cpp:2:
> > /usr/include/qt4/QtDBus/qdbusconnectioninterface.h:73:5: error: overriding non-deleted function 'virtual QDBusConnectionInterface::~QDBusConnectionInterface()'
> > ~QDBusConnectionInterface();
> > ^
> >
> > /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtdbus/x_1.cpp:1594:7: note: 'virtual __smokeqtdbus::x_QDBusConnectionInterface::~x_QDBusConnectionInterface()' is implicitly deleted because the default definition would be ill-formed:
> > class x_QDBusConnectionInterface : public QDBusConnectionInterface {
> > ^~~~~~~~~~~~~~~~~~~~~~~~~~
> >
> > /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtdbus/x_1.cpp:1594:7: error: 'virtual QDBusConnectionInterface::~QDBusConnectionInterface()' is private within this context
> > In file included from /usr/include/qt4/QtDBus/QtDBus:8:0,
> > from /<<PKGBUILDDIR>>/qtdbus/qtdbus_includes.h:2,
> > from /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtdbus/x_1.cpp:2:
> > /usr/include/qt4/QtDBus/qdbusconnectioninterface.h:73:5: note: declared private here
> > ~QDBusConnectionInterface();
> > ^
> >
> > qtdbus/CMakeFiles/smokeqtdbus.dir/build.make:98: recipe for target 'qtdbus/CMakeFiles/smokeqtdbus.dir/x_1.cpp.o' failed
> > make[3]: *** [qtdbus/CMakeFiles/smokeqtdbus.dir/x_1.cpp.o] Error 1
>
> ...
>
> > from /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtgui/x_13.cpp:2:
> > /usr/include/qt4/QtGui/qsessionmanager.h:65:5: error: overriding non-deleted function 'virtual QSessionManager::~QSessionManager()'
> > ~QSessionManager();
> > ^
> >
> > /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/qtgui/x_13.cpp:3572:7: note: 'virtual __smokeqtgui::x_QSessionManager::~x_QSessionManager()' is implicitly deleted because the default definition would be ill-formed:
> > class x_QSessionManager : public QSessionManager {
> > ^~~~~~~~~~~~~~~~~
This is caused by g++ defaulting to -std=c++11 in GCC 6.
An easy workaround is to add:
export DEB_CXXFLAGS_MAINT_APPEND = -std=c++98
to debian/rules.
Thanks,
_g.
Attachment:
signature.asc
Description: OpenPGP digital signature