[Qt-creator] Building Qt Creator and QBS separately

Andrzej Telszewski atelszewski at gmail.com
Tue May 3 02:58:33 CEST 2016


On 26/04/16 09:26, Christian Kandeler wrote:
> On 04/25/2016 07:54 PM, Andrzej Telszewski wrote:
>> I have now built QBS with:
>>
>> qmake-qt5 qbs.pro \
>>    QBS_LIBRARY_DIRNAME=lib$LIBDIRSUFFIX \
>
> What is $LIBDIRSUFFIX?
>

$LIBDIRSUFFIX is set to 64, would be empty for 32 bit arch.

>>    QMAKE_CXXFLAGS="$SLKCFLAGS" \
>>    QBS_INSTALL_PREFIX=/ \
>>    CONFIG+=qbs_enable_project_file_updates
>> make
>> make docs
>> make install INSTALL_ROOT=$PKG/usr
>
> What is $PKG?
>

$PKG is path to where to temporarily install the files.
Later, the distribution package is created from within this path.
And then the packages is installed.

>> and QTC with:
>
>> qmake-qt5 qtcreator.pro \
>>  IDE_LIBRARY_BASENAME="lib$LIBDIRSUFFIX" \
>>  QMAKE_CXXFLAGS="$SLKCFLAGS" \
>>  LLVM_INSTALL_DIR=/usr \
>>  QBS_INSTALL_DIR=/usr
>
> Shouldn't this be $PKG/usr?
>

No. If I'm not mistaken, QBS_INSTALL_DIR is where the Qt Creator build 
system is searching for QBS. The same applies for LLVM_INSTALL_DIR, for 
having Clang Code Model. And since both QBS and LLVM are already 
installed under /usr, /usr is the correct value to set.

>> make
>> make install INSTALL_ROOT=$PKG/usr
>> make docs
>> make install_docs INSTALL_ROOT=$PKG/usr
>
>> Now I have a small issue. When I start Qt Creator, I receive the message:
>> WARNING: Plugin path '/usr/lib//qbs/plugins' does not exist.
>
> If $PKG is not empty, then that is expected. Otherwise this path should
> be correct; at least that's what a cursory look at the project files
> suggests. Where is qbs/plugins actually located now?

First of all, I forgot to mention that, despite the warning, my QBS 
based project actually builds fine.

As I mentioned before, after the QBS is compiled, the files are 
installed in the $PKG temporary location and a packages is created.

Then the QBS package is installed and QBS plugins can be found under:

/usr/lib64/qbs/plugins

 > (Note: Qt Creator hardcodes "lib" when looking for plugins, so you
 > cannot set QBS_LIBRARY_DIRNAME to anything else.)
 >

You're correct on that one. I traced down where the "lib" is hardcoded 
and wrote a small patch to deal with that.

Now the warning does not appear anymore.

The patch is attached. Since I'm not yet (maybe never;)) involved in Qt 
Creator development, feel free to upstream the patch. Naturally, 
provided that it is correctly written ;)

I'll be off for a few days and cannot deal with it now. But if nobody 
stands for it till I return, I'll probably get on upstreaming it myself.

>> I guess that I still mess something with QBS_LIBRARY_DIRNAME and/or
>> IDE_LIBRARY_BASENAME there is something missing?
>
> IDE_LIBRARY_BASENAME is irrelevant when building against an
> "independent" qbs.
>

But I think IDE_LIBRARY_BASENAME is relevant at least with Qt Creator 
itself. That is building on 64-bit arch will place the Qt Creator 
libraries under:

/usr/lib64/qtcreator/

and not under:

/usr/lib/qtcreator/


And of course, it is now relevant to my patch ;)


To sum up, this is what I have now and it finally seems to be working fine:

*QBS*
qmake-qt5 qbs.pro \
   QMAKE_CXXFLAGS="$SLKCFLAGS" \
   QBS_LIBRARY_DIRNAME=lib$LIBDIRSUFFIX \
   QBS_INSTALL_PREFIX=/ \
   CONFIG+=qbs_enable_project_file_updates
make
make install INSTALL_ROOT=$PKG/usr

$ create the QBS distribution package ...
$ install the QBS package ...

*Qt Creator*
qmake-qt5 qtcreator.pro \
   QMAKE_CXXFLAGS="$SLKCFLAGS" \
   IDE_LIBRARY_BASENAME="lib$LIBDIRSUFFIX" \
   LLVM_INSTALL_DIR="/usr" \
   QBS_INSTALL_DIR="/usr"
make
make install INSTALL_ROOT=$PKG/usr

$ create the Qt Creator distribution package ...
$ install the Qt Creator package ...

>
> Christian
> _______________________________________________
> Qt-creator mailing list
> Qt-creator at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/qt-creator
>


-- 
Best regards,
Andrzej Telszewski
-------------- next part --------------
A non-text attachment was scrubbed...
Name: qbs_plugins_basedir.patch
Type: text/x-patch
Size: 765 bytes
Desc: not available
URL: <http://lists.qt-project.org/pipermail/qt-creator/attachments/20160503/17a8f417/attachment.bin>


More information about the Qt-creator mailing list