[QBS] Internal libraries, RPATH and Qt Creator
Christian Gagneraud
chgans at gna.org
Thu Apr 30 02:48:00 CEST 2015
Hi there,
I recently decided that it was time for me to give a go at using Qbs
(I've been using Qtc w/ qmake from day 1). My project has a typical
layout/structure:
.
├── doc
├── share
├── src
│ ├── app
│ ├── libs
│ └── plugins
└── tests
As I didn't really know how to get started, I decided to have a look at
Qtc's own Qbs code, and to my surprise, it's quite simple and straight
forward.
So I ended up writing 4 custom items:
- LedaProduct (common base item)
- LedaApplication
- LedaLibrary
- LedaPlugin
I'm not using the plugin stuff yet (I haven't written the loader), so
for now my plugins are based on LedaLibrary, and the app includes the
plugins header, link against the fake plugins and do all the setup
"manually".
Anyway, all build fine, but I'm having problems resolving the library
loader path at runtime (using qtcreator).
I have tried to use "cpp.rpaths: [project.buildDirectory + "/" +
project.leda_library_path]" in LedaApplication, but it screws up the
linking of my app (there's a -l/fullpath/.socopy/libfoo.so that appears
on the command line).
So my question is how do I set up my Qbs files so that I can run my app
(without installing files) using the Qt Creator "run" command? (note: of
course I still want too to be able to do a local or system install and
run the app from there)
My question concerns both app/libs dependencies but as well lib/lib and
plugin/lib ones too.
It would be nice if someone could shed some light on this, or point me
to an example or documentation.
Thanks, and long live qbs!
Krys
More information about the Qbs
mailing list