[QBS] Questions about QBS best practices

Smirnov Vladimir mapron at yandex.ru
Thu Jun 13 15:12:05 CEST 2013


Greetings, i have some questions about how to use QBS correctly in large 
projects.
First, i describe my use cases and how i've solved  problems.
We have a couple of projects, with some intersections between them.
Some projects written in Pascal, few in C and most  in C++ (with Qt 
framework).
We have pascal project that compiles in activeX component, which then 
have a Dumpcpp-codegen. (included in some libraries).
We have come C++ static libraries, that depends on components with 
absolute paths.
Also we have dependencies on C++ libraries such as Boost, Loki, QWT, 
which is placed differently on every developer machine (not so good 
system integration, even disk drives with repositories and their paths 
differs).
How did all that crap worked before?
-Visual studio builds: *.user files, where all inc, lib path were placed 
plus destination directory.
-Qmake builds: custom .pri file(s) with QMAKE_LIBS, DESTDIR and 
INCLUDEPATH directives.
How did i tried solve with QBS?
I had created modules : one lib module (e.g. boost) for each lib 
dependency. All path became properties of module. Then i created config 
variables (about dozen) for all these settings, which are updating with 
win batch file (developer creates copy of *.dist instance in SVN).
So, after that manipulations all seems to work, but... when i started to 
test Qt Creator, I've notived that there no way to build with custom 
profile. Furthermore, there no way to set my own settings in generated 
profiles - they all refreshed before each build (is it a bug? i belive 
not).

Main question: what is a correct way to setup all that absolute paths 
dependencies on each developer machine?
Sub-question: if i use configure probes (they are still unstable, aren't 
they?), saved configuration will stored with project, or in global 
configuration? Won't that config be lost (in QtC generated profiles)?



More information about the Qbs mailing list