Hat jemand Erfahrung mit Qbs?

Alles rund um die Programmierung mit Qt
Antworten
chrislo1976
Beiträge: 105
Registriert: 24. Februar 2008 09:45

Hat jemand Erfahrung mit Qbs?

Beitrag von chrislo1976 »

Hallo zusammen!


Es gibt jetzt schon eine Weile das Qbs, was ja scheinbar QMake früher oder später ersetzen soll.
Wir verwenden zwar größtenteils CMake und sind auch total zufrieden damit, allerdings gibt es mit dem QtCreator seit der Version 3.3.0 Probleme damit.

Deswegen bin ich momentan am überlegen ob wir künftig evtl. Qbs verwenden könnten/sollten. Qbs ist mittlerweile schon bei Version 1.4.0 (gut, das sagt nicht unbedingt was). Wenn ich mir den Bugtracker zu Qbs ansehe, stehen da teilweise ziemliche grundsätzliche Features als "offen"...

Hat jemand von euch schon Erfahrungen (gute und/oder schlechte) damit gemacht?
Denkt ihr dass man Qbs schon produktiv eingesetzt werden kann?


Gruß
Christian
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Hat jemand Erfahrung mit Qbs?

Beitrag von Christian81 »

Wenn es Probleme mit cmake und qtcreator 3.3 geben sollte dann sollte man diese melden. Dann werden diese auch gefixt.
Auf der cmake-Mailingliste habe ich zumindest noch nichts davon gehört
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
chrislo1976
Beiträge: 105
Registriert: 24. Februar 2008 09:45

Re: Hat jemand Erfahrung mit Qbs?

Beitrag von chrislo1976 »

Hallo!

Problem ist bereits bekannt: https://bugreports.qt.io/browse/QTCREATORBUG-13695 und https://bugreports.qt.io/browse/QTCREATORBUG-14258.

Allerdings scheint es nicht wirklich so, als gäbe es dazu eine baldige Lösung...

Für uns ist die momentane Lösung bei der Version 3.2.2 von QtCreator zu bleiben.

Gruß
Christian
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Hat jemand Erfahrung mit Qbs?

Beitrag von Christian81 »

Der cmake-Testcase dort benutzt einige, spätestens mit cmake 3.0 nicht mehr 'schöne' Dinge.
Ich denke, mit target_include_directories() anstatt include_directories() könnte es gehen. Bzw. noch besser im lib-Target korret target_include_directories(PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} benutzen so dass beim Executable die lib nur noch im target_link_libraries() auftreten muss und nirgends weiter. Dann bindet cmake den include-.Path ggf. besser an das Target.
The c++ code model now expects more accurate information on the include paths and wants to know the includes on per project part.
Ich werde mal schauen was der cmake-Projektparser da alles so anstellt... :)
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Hat jemand Erfahrung mit Qbs?

Beitrag von Christian81 »

Also nach dem Kommentar den ich gequotet habe, verstehe ich nicht warum qtcreator das nicht rausbekommen sollte:
<Target title="TestExe/fast">
...
<Compiler>
<Add option="-DQT_CORE_LIB" />
<Add option="-DQT_NO_DEBUG" />
<Add option="-DQT_NETWORK_LIB" />
<Add directory="/home/chehrlic/tmp/CMakeTest/TestLib" />
Wenn qtcreator aus dieser Info nicht den richtigen Include-Path zu TestLib rausfindet ...
/edit: cmake 3.1

Und die eigentliche Frage: qbs - wenn ich alle meine lauffähigen CMake Scripte ohne Probleme auf qbs umstellen könnte, inclusive den externen Dependencies welche direkt ein CMake-Findmodul etc. mitbringen wäre es eine Option aber so ... eher nicht.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
chrislo1976
Beiträge: 105
Registriert: 24. Februar 2008 09:45

Re: Hat jemand Erfahrung mit Qbs?

Beitrag von chrislo1976 »

Hallo!


Ich hab mal bei einem Teilprojekt das target_include_directories() benutzt, leider ohne Verbesserung.
Was ich aber auch nicht verstehe, welche Informationen denn für den QtCreator fehlen sollten. Hab auch mal in das erzeugte CodeBlocks-Projekt reingeschaut, und da sind alle Include-Verzeichnisse für das jeweilige Teilprojekt korrekt enthalten.
Das Kompilieren funktioniert ja auch! Dort werden (offensichtlich) alle notwendigen Includeverzeichnisse interpretiert.

NUR im QtCreator-Editor werden einige Header nicht gefunden, und damit, und das tut uns am meisten weh, funktioniert die Codevervollständigung nicht...

Gruß
Christian
Antworten