Important: Please read the Qt Code of Conduct -

Help with unknown toolchain for embedded Qt libs in Qt Creator!

  • Hello!
    A few times ago I tried to use Qt to build some embedded applications for TI OMAP 3530 (ARM Cortex-A8 core). I downloaded and built Qt libraries with SGX, Tslib and all looks correct. I successfully built simple ¨hello world" program with Qt in console and checked it up on the development kit. But, when I wanted to use Qt Creator for my embedded Qt libs, some error appeared. Qt Creator successfully found out qmake for embedded Qt libs in system Linux PATH, but in the bottom of ¨Options/Qt4¨ window appeared ¨This Qt Version has an unknown toochain¨. So, I could not open or create new project with embedded Qt version. In an opposite, when I use desktop version of Qt - Creator understand desktop tollchain correctly. What’s wrong in embedded qmake?

  • Moderators

    Nothing is wrong in the embedded qmake. It is just that creator does not know how to build stuff for your board. There is no way around that but fixing up "src/plugins/qt4projectmanager/qtversionmanager.cpp" to set up a gcc toolchain for whatever it detects your Qt version as (assuming you are using a gcc to crosscompile to the board).

    Please send in a merge request via "gitorious": if you do this:-)

  • Problem has been solved much easy, without fixing any files in sources of Qt creator. I just created correct symbolic link called "default" to directory with correct "qmake.conf", instead corrupted in mkspecs (it linked to "qws/linux-omap3-g++") . In my case - it was full way to "/home/toshik/OMAP/Qt1/mkspecs/qws/linux-omap3-g++" folder.

    Thanks for advices!

  • I get the same message in qt creator when I try to use the maemo sdk qmake.
    I followed the guide from here: "Late Alholas Blog post":

    Could you tell me where to put the symbolic link? I found one in "/scratchbox/users/xengi/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/default" linked to "/scratchbox/users/xengi/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/linux-g++". Compiling inside scratchbox works with this config.

  • Moderators

    Qt Creator 2.2 and later are much better at figuring out toolchains to use and you can even configure your own if all else fails. So it might be worth a try with the beta again.

    [XeN]: Grab the Qt SDK 1.1 beta, that has freemantle support built in. In general you do not want to use scratchbox.

  • Another option is to pass in "-spec <your mkspec>" as an argument to the qmake build step from the Projects page in qt-creator.

    As a I do this to override the "broken" mkspec that Gentoo ships with the system installed Qt which does not add -g to the debug builds. I think the reason for this is something to do with other system packages that do not compile properly with this set. So I have made my own mkspec and call qmake like this:

    @qmake -spec linux-g++-local@

    where my linux-g++-local mkspec simply adds the -g flag in again.

  • the main reason why I want to use the scratchbox enirenment with qt creator is because I wanna build applications for maemo with external libs like taglib for mp3 tagging.

    Can I do that with Qt SDK 1.1 beta?

    In my Nokia Qt SDK it's impossible to install taglib-dev in the fremantle sysroot or I don't know how I should do it.

Log in to reply