Qt World Summit: Submit your Presentation

QtCreator: Qt version not properly installed

  • I'm trying to get a working MinGW x32 and x64 configuration in Qt Creator. I have downloaded the x64-Qt-5.1.1+qtcreator-2.8.1-(gcc-4.8.1-seh-rev5).7z package from here:
    From the archive I have extracted the Qt64-5.1.1 folder (the Qt build) in _C:\Qt\5.1.1_ and the mingw64 folder (the mingw64 compiler) in C:\Qt\Tools. I did the same with the x32 package available at the same link above. I have renamed the extracted folders with a better naming scheme, so now I have the paths as follows:
    @[MingW32 compiler x32] C:\Qt\Tools\mingw-32-4.8.1\bin
    [MingW32 compiler x64] C:\Qt\Tools\mingw-64-4.8.1\bin
    [Qt 5.1.1 binaries MinGW x32 build] C:\Qt\5.1.1\mingw-32-4.8.1
    [Qt 5.1.1 binaries MinGW x64 build] C:\Qt\5.1.1\mingw-64-4.8.1@
    Then in QtCreator > Options> Build & Run I have set as follows:
    => Add > MinGW
    =>> Name: MinGW 4.8.1 - 32-bit
    =>> Compiler path: Browse > C:\Qt\Tools\mingw-32-4.8.1\bin\gcc.exe
    =>> ABI: <custom> x86 - windows - msys - pe - 32bit

    => Add > MinGW
    =>> Name: MinGW 4.8.1 - 64-bit
    =>> Compiler path: Browse > C:\Qt\Tools\mingw-64-4.8.1\bin\gcc.exe
    =>> ABI: <custom> x86 - windows - msys - pe - 64bit

    [Qt Versions]
    => Add > C:\Qt\5.1.1\mingw-32-4.8.1\bin\qmake.exe
    ==> Name: Qt 5.1.1 (mingw-32-4.8.1)

    => Add > C:\Qt\5.1.1\mingw-64-4.8.1\bin\qmake.exe
    ==> Name: Qt 5.1.1 (mingw-64-4.8.1)

    => Add
    =>> Name: Generic MinGW 4.8.6 32-bit
    =>> Device type: Desktop
    =>> Device: Run locally (default for Desktop)
    =>> Sysroot: (blank)
    =>> Compiler: MinGW 4.8.1 - 32-bit
    =>> Debugger: C:\Program Files (x86)\Windows Kits\8.0\Debuggers\x64\cdb.exe
    =>> Qt version: Qt 5.1.1 (mingw-32-4.8.1)
    =>> Qt mkspec: (blank)

    => Add
    =>> Name: Generic MinGW 4.8.6 64-bit
    =>> Device type: Desktop
    =>> Device: Run locally (default for Desktop)
    =>> Sysroot: (blank)
    =>> Compiler: MinGW 4.8.1 - 64-bit
    =>> Debugger: C:\Program Files (x86)\Windows Kits\8.0\Debuggers\x64\cdb.exe
    =>> Qt version: Qt 5.1.1 (mingw-64-4.8.1)
    =>> Qt mkspec: (blank)

    So in theory all the files Qt Creator needs are there ready to be used in the configured environment. In practice instead, on the Qt versions tab, the Qt builds that I have added report an error:
    @Qt version is not properly installed, please run make install@
    A red "stop" icon with an exclamation mark is shown in front of the Qt versions I added. The same happens on the Kits tab, and the error reported here is:
    @Mkspec not found for Qt version.@
    I have checked all the paths, I even used names without spaces; I tried many times to remove and add again the kits, and I have even reinstalled Qt Creator. Previously I had the MSVC2012 and mingw32_48 kits installed (installed with the online Qt installer) so I made a backup of them and restored it over a new installation of Qt without any kits. Guess what: not even these kits, which were working just fine before, are working now. They report the same error.

    So I guess I'm doing something wrong while manually adding the kits, or anything... could someone please tell me what's going on and how to solve this issue?

    p.s. I'm using Qt Creator 2.8.1 on Windows 7 Professional x64 and I have the Windows 8.1 SDK and Visual Studio 2012 installed.

  • Sometimes this has to do with fixed paths at compile time referring to inexistent paths in a different deployment.

  • My bad, I should explore folders a bit more before assuming there's nothing else I can do.
    I found in the Qt build folders an executable, qtbinpatcher.exe. I've run it (for both 32 and 64 bit versions) and they seem to fix the main problem (Qt version not properly installed). I fixed the MSVC12 backups too by copying the same executable in each folder (there wasn't any provided in the MSVC12 folders) and they now work fine again.

    The Mkspec error gets away too but if you specify any parameters in the mkspec field of the kit, the error will pop up again. For this I haven't found a solution yet. Any suggestions?

Log in to reply