staging.inyokaproject.org

QtADB zu kompilieren scheitert

Status: Ungelöst | Ubuntu-Version: Ubuntu 16.04 (Xenial Xerus)
Antworten |

Heinrich_Schwietering Team-Icon

Wikiteam
Avatar von Heinrich_Schwietering

Anmeldungsdatum:
12. November 2005

Beiträge: 11288

Hi!

Da die "fertige" Version von QtADB unter 16.04 nicht gerade sonderlich stabil läuft, und etliche Dinge nicht funktionieren, dachte ich dass vielleicht ein Neubau aus den Quellen (schließlich ist die fertige Version von 2014) zu bessseren Ergebnissen führen könnten. Die geforderten Abhängigkeiten sind alle auf dem Rechner vorhanden, QT4 natürlich auch.

Leider scheitert aber, nachdem qmake-qt4 QtADB.pro brav ein Makefile produziert hatte, make schon recht bald mit dieser Meldung

main.cpp:30:49: error: ‘QMessageLogContext’ does not name a type
void customMessageHandler(QtMsgType type, const QMessageLogContext &context, co
                                                 ^
main.cpp: In function ‘int main(int, char**)’:
main.cpp:101:48: error: ‘qInstallMessageHandler’ was not declared in this scope
     qInstallMessageHandler(customMessageHandler);
                                                ^
Makefile:693: die Regel für Ziel „main.o“ scheiterte
make: *** [main.o] Fehler 1

Kann jemand kundiges mir sagen, wie ich die Fehler beheben kann?

so long
hank

ChickenLipsRfun2eat Team-Icon

Supporter
Avatar von ChickenLipsRfun2eat

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12070

Hallo!

Wie man das behebt nicht, aber den QMessageLogContext gibt es erst mit Qt5.0, sagt zumindest die Qt-Seite.

Da das "nur" eine Klasse ist, könntest du die aus den Quellen von Qt5 übernehmen, welche intern auf /usr/include/qt/QtCore/qlogging.h verweisen.

Nachtrag: Habe gerade in den Quellen herumgestöbert (https://bitbucket.org/michalmotyczko/qtadb/src), dort scheint es so zu sein, dass bereits (teilweise?) auf Qt5.3 migriert wurde. ▶ Qt5 nutzen.

Heinrich_Schwietering Team-Icon

Wikiteam
(Themenstarter)
Avatar von Heinrich_Schwietering

Anmeldungsdatum:
12. November 2005

Beiträge: 11288

Hi!

Danke; aber wenn ich statt qmake-qt4 QtADB.pro nun qmake QtADB.pro (was dann ja qt5 verwendet) bekomme ich

Project ERROR: Unknown module(s) in QT: declarative

Wenn ich danach im Netz suche, finde ich Hinweise, dass das Modul declarative ab qt5.6 nicht mehr vorhanden sei; aber auf 16.04 ist qt5.5 installiert... 😐

so long
hank

Nachtrag: qtdeclarative5-dev ist installiert 😐

ChickenLipsRfun2eat Team-Icon

Supporter
Avatar von ChickenLipsRfun2eat

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12070

Ich habe mir die Source mal geladen. Das sieht so aus, als wäre mitten in der Umstellung aufgehört worden.

Das mit QDeclarative ist nichts schlimmes, da gibt es nur andere Namen und leicht andere Handhabungen für den QML-Krempel.

Falls du magst, kannst du mal in der .pro-File die Zeile

QT += network core qml quick widgets

ändern.

Danach noch anhand dieser Seite die Declaratives in QmlEngine/Quick/Component/whatever tauschen und dich um den Rest der Fehler kümmern... Ich kam auf 19 beim Kompilierversuch.

Heinrich_Schwietering Team-Icon

Wikiteam
(Themenstarter)
Avatar von Heinrich_Schwietering

Anmeldungsdatum:
12. November 2005

Beiträge: 11288

Hi!

Jooo; scheint etwas mehr Arbeit zu sein.... Ich habe noch eine andere Version, einen "privaten" Fork gefunden, https://github.com/lynnux/qtadb, der ließ sich mit qt5 bauen; das Ergebnis ist leider aber nicht viel stabiler als die offizielle 0.8.1-Version....

Danke für deine Mühe, aber ich glaube, das ist mir zuviel Aufwand 😉

so long
hank

ChickenLipsRfun2eat Team-Icon

Supporter
Avatar von ChickenLipsRfun2eat

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12070

Heinrich_Schwietering schrieb:

Danke für deine Mühe, aber ich glaube, das ist mir zuviel Aufwand 😉

dito 😉

Vielleicht eines Tages mal 😀

Antworten |