Shinmera / qt-libs

Helper system to ensure the necessary library for CommonQt/Qtools development are available and deployable.
zlib License
18 stars 8 forks source link

Problems building via Quicklisp on Linux sbcl 1.3.6-2 #6

Closed richardjdare closed 8 years ago

richardjdare commented 8 years ago

I'm having problems building qt-libs via Quicklisp on Arch Linux, using SBCL 1.3.6-2 and gcc 6.1.1 I have tried several times using a clean reinstall of quicklisp, deleting ~/.cache/common-lisp, and reinstalling qt4.8, cmake and SBCL. I have tried different versions of qt, from qt-4.4.8.5, through qt4-4-4.8.7-1 to the latest qt4-4.8.7-9

After I (ql:quickload 'qt-libs) the installation proceeds for a while until I get:

Subprocess with command "env LD_LIBRARY_PATH=\"/home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokegen/install/lib/:/home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokegen/install/lib/smokeqt/\" make -j 1 -C \"/home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokeqt/generate/qtcore/\" -f \"Makefile\"" exited with error code 2 [Condition of type UIOP/RUN-PROGRAM:SUBPROCESS-ERROR]

I tried to run the offending command in the terminal to see what I could find out. It looks like smokeqt/generate/qtcore/qtdbus/x_1.cpp isn't compiling:

make[2]: Entering directory '/home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokeqt/generate/qtcore' [ 23%] Building CXX object qtdbus/CMakeFiles/smokeqtdbus.dir/x_1.cpp.o /home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokeqt/generate/qtcore/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 /home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokeqt/source/qtdbus/qtdbus_includes.h:2, from /home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokeqt/generate/qtcore/qtdbus/x_1.cpp:2: /usr/include/qt4/QtDBus/qdbusconnectioninterface.h:73:5: error: overriding non-deleted function ‘virtual QDBusConnectionInterface::~QDBusConnectionInterface()’ ~QDBusConnectionInterface(); ^ /home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokeqt/generate/qtcore/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 { ^~~~~~~~~~~~~~~~~~~~~~~~~~ /home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokeqt/generate/qtcore/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 /home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokeqt/source/qtdbus/qtdbus_includes.h:2, from /home/richardjdare/.cache/common-lisp/sbcl-1.3.6-linux-x64/home/richardjdare/quicklisp/dists/quicklisp/software/qt-libs-20160628-git/smokeqt/generate/qtcore/qtdbus/x_1.cpp:2: /usr/include/qt4/QtDBus/qdbusconnectioninterface.h:73:5: note: declared private here ~QDBusConnectionInterface(); ^ make[2]: *** [qtdbus/CMakeFiles/smokeqtdbus.dir/build.make:96: qtdbus/CMakeFiles/smokeqtdbus.dir/x_1.cpp.o] Error 1

Shinmera commented 8 years ago

I've encountered this myself. Unfortunately I have no damn idea why it happens.

The good news is that the precompiled versions seem to still work fine however, so see here after clearing your FASL cache for qt-libs.

Shinmera commented 8 years ago

This should be fixed with qt-libs2.0.0, at least I cannot reproduce the issue myself anymore.