Seite 1 von 1

Hat jemand Erfahrung mit Qbs?

Verfasst: 2. Mai 2015 07:01
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

Re: Hat jemand Erfahrung mit Qbs?

Verfasst: 4. Mai 2015 16:14
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

Re: Hat jemand Erfahrung mit Qbs?

Verfasst: 4. Mai 2015 18:58
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

Re: Hat jemand Erfahrung mit Qbs?

Verfasst: 4. Mai 2015 20:03
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... :)

Re: Hat jemand Erfahrung mit Qbs?

Verfasst: 4. Mai 2015 20:19
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.

Re: Hat jemand Erfahrung mit Qbs?

Verfasst: 5. Mai 2015 12:26
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