[Solved] How can I add a compiler?



  • Hi, I installed Qt 5.4, and I also have Visual studio 2010. Now Qt gives an error "Qt Creator needs a compiler set up to build. Configure a compiler in the kit options."
    I go to tools > options > compiler. There is an Auto-detected list including some Visual studio C++ compiler 10.0 (...).
    Should I choose among them and if yes which one?


  • Lifetime Qt Champion

    Hi and welcome to devnet,

    Did you install Visual Studio 2010 Qt build ?



  • Thanks, should it be shown in my Qt folder or I need to install it separately?



  • Should I download qt-everywhere-opensource-src-4.8.2.tar.gz ?
    (https://download.qt.io/archive/qt/4.8/4.8.2/)


  • Lifetime Qt Champion

    If you don't have any compiler installed you have two choices:

    1. Use the MinGW package, the compiler is included
    2. Install Visual Studio then Qt
      The Visual Studio version and the Qt build must match, you can't use a library built with MSVC2010 with MSVC2013 and vice-versa
      Visual Studio can only be obtained from Microsoft website.

    Why Qt 4.8.2 ?



  • I am not sure if I have any compiler, but I receive this error:
    "Configuration is faulty. Check the Issues view for details.
    Error while building/deploying project Youtube (kit: Desktop Qt 5.4.2 MSVC2013 64bit)
    When executing step "Make"."

    1. How can I use MinGW package?
    2. I had Visual Studio 2010 and after that installed Qt 5.4. Will it be ok if I install an older version of Qt?


  • When I check tools > options > compiler this option menu appears, which includes the compilers I can add.

    Here is the screenshot


  • Lifetime Qt Champion

    Like I wrote before, if you want to use the MSVC2013 package, you need to instal Visual Studio 2013.

    For MinGW, just use the kit that has been made for it when you installed it.



  • Could you please tell me which one of these options I should add for MinGW?
    Kits
    And if I want to use visual studio 2010 as compiler which version of Qt I can install instead of Qt 5.4?


  • Lifetime Qt Champion

    Did you install the MinGW build of Qt ? If not, then then that's the first thing to do



  • @SGaist

    I tried to installed it using this link: link

    A Zip file was downloaded including these folders: Z7 file

    I don't know which one is the correct path to add to kits.



  • @Rela

    Hello Rela and welcome to devnet,

    it would be easier to install MinGW using the 'Qt Maintenance Tool'. You can find it in your Qt folder. It's name is "MaintenanceTool.exe". Just start the tool and select "Change" or something like that. Afterwards select the Package "MinGW" (you might find listed under your Qt Version). Then just continue with the installation and when it's done you can configure your project inside Qt for MinGW.

    And just for interesst: why don't you want to use a newer version of Qt? Is it because you are trying to run an older qt project and you have concerns about compatibility?



  • @onek24

    Hi and thanks.

    When I click on "Maintenance Tool.exe" it asks some setup questions:
    "Add or remove components"
    "Update components"
    "Remove all components"
    Which one should I choose?

    I installed Qt5.4, and the newest one is 5.5. I am not going to run an old project, just want to start developing an GUI for a C++ algorithm in MVS 2010. May I ask what is the advantage of the newest version?



  • @Rela said:

    When I click on "Maintenance Tool.exe" it asks some setup questions:
    "Add or remove components"
    "Update components"
    "Remove all components"
    Which one should I choose?

    First of all you might click "Update components" and check if the MaintenanceTool needs an update - if so: update it. After you updated the MaintenanceTool you have to restart it. Then click on "Add or remove components". That's the part where you can modify or change your current Qt Setup. Since you're using Qt 5.4 you just go in the entry 'Qt 5.4' and then select the ackages you want - in this case: MinGW(newest version of it). Then press "continue" or something like that. If you want to update to Qt 5.5, you will have to deselect Qt 5.4 and select Qt 5.5(just the packages you want/need).

    I installed Qt5.4, and the newest one is 5.5. I am not going to run an old project, just want to start developing an GUI for a C++ algorithm in MVS 2010. May I ask what is the advantage of the newest version?

    Then you might want to check the new Features in Qt 5.5 . If your algorithm was written to work with the mvsc2010, then you might want to keep it that way. You can install MSVC on your computer and afterwards install the MSVC package in your MaintenanceTool just like you did with MinGW.

    Oh and by the way, this link might be very helpfull for you:
    Getting Startet with Qt



  • This post is deleted!


  • @onek24
    Thanks for your complete explanation.

    I chose the MinGW in the list for Qt5.4, could you tell me if I need choose more components?Maintain Qt

    I have the C++ algorithm in Microsoft visual studio 2010 and it has been installed already. Can I work with Qt5.4 while I have MVS2010?
    With respect to the MSVCs that are marked in the list are 2013.



  • @Rela

    You're welcome. :)

    I chose the MinGW in the list for Qt5.4, could you tell me if I need choose more components?

    Depends on what you need. If you want to develop for Windows (x86/x64) only, then i would recommend to select the following packages only:

    • Qt 5.4
      • MinGW 4.9.1(32 bit) OpenGL <--- maybe???
      • msvc2013 32-bit
      • msvc2013 64-bit
      • Source Components
      • Qt WebEngine
    • Tools
      • MinGW 4.9.1

    Keep in mind [!]: The compiler comes with the visual studio! That means that you will have to install the appropriated Visual Studio version. Example: For msvc2013 you'll need Visual Studio 2013. Lets take the selected packages - in the case above: msvc2013 32-bit and 64-bit. These are just pre-build components! This package doesn't contain the compiler.

    You can see MinGW 4.9.1 under Tools. It's the full MinGW Toolchain(containing the compiler). So for MinGW you won't need to download the compiler from third-party(like visual studio from microsoft).

    Under Qt 5.4 you can see MinGW 4.9.1(32 bit) OpenGL. These are also just the prebuild qt-components for MinGW.

    Qt WebEngine might be interesting for you since your project-name was "YouTube".

    Disclaimer:
    I might be wrong with my informations since i'm just a beginner myself. But still: this might be correct and get you started. :)



  • Thank you, your help is so helpful, since from last week I am just involving with this compiler problem.

    I see 5 marked MSVC2013 for 64 and 32, how to know which two ones I should choose?MSVC components



  • You can imagine it that way:

    Qt is just here to help you develop applications. It has a large amount of classes you can use and the qt creator(the gui which helps you develop applications with qt). It's far more - but let's keep it simple.
    If you want to compile an application for an platform, then you'll need an compiler which can compile it for that platform. For windows, microsoft provided an compiler which is included in the MSVC(Microsoft Visual C++) package.

    So lets say you want to compile for windows: You'll need MSVC. Afaik Qt isn't allowed to put MSVC into their installation, so you'll have to download and install MSVC on your own.

    Theoretically you can compile a Qt application for windows now. But it would take a very long time to compile all the qt code from the Qt classes you use because it's a large amount of code. Therefore you can download the precompiled qt classes. That means some guy compiled them using an compiler for a spezific platform (lets say MSVC for windows) and put them free for download. So if you download these packages you won't have to compile them a second time!

    I hope i could explain it a bit. I cut a few steps and informations but i tried to keep it simple. :)



  • @Rela said:

    Thank you, your help is so helpful, since from last week I am just involving with this compiler problem.

    I see 5 marked MSVC2013 for 64 and 32, how to know which two ones I should choose?MSVC components

    If you read it again you'll see that it isn't msvc2013 only. It has also packages for msvc2012 and msvc2010! It has also msvc OpenGL packages - which you won't need now(i guess).

    I would take the newest:

    • msvc2013 32-bit
    • msvc2013 64-bit

    Select the ones without OpenGL.



  • @Rela

    To understand the precompiled-package part you might want to check out this wikipedia-link:

    Dynamic-link library

    Just read it a bit and it might explain you the purposes of Dynamic-linked libraries(DLL). The precompiled-package contains DLLs. :)



  • @onek24

    Thanks onek24. I just chose 2013 ones without OpenGL, now it works.
    The MinGW was among the removed components when I was installing Qt, since It took a lot of space, I removed some of them.

    I am working with Qt5.4 vertsion and MinGW compiler now, but could you please tell me if I want to develop interface for the algorithm in MVS 2010 later, what I need to do? I think one way is installing MVS2013, but if I want to keep MVS2010 what the other option is?



  • @Rela

    You're welcome. Afaik you don't need MSVC if you work with the MinGW compiler. If you installed Visual Studio and the corresponding MSVC-Package in the MaintenanceTool, then you can compile with the MSVC compiler.

    I'm sorry but i'm currently not understanding in what form the algorithm is. Do you have the source-code or what is it? Please explain a little bit further.



  • @onek24

    The code is in C++, and I have installed MVS2010.

    In Qt, when I go to tools>options>compilers these MVS2013 are shown:link
    My question was that if I want to have a GUI for my code is it possible to work with MinGW as a compiler or I need to install MVS20103?



  • So your algorithm is just c++ code you want to implement? Since Qt can detect your compilers, you have already installed MSVC. Please go to the section "kits" in the "settings" -> "build & run" and show me whats listed. If you can find something named "Desktop MSVC"(or something like that) then you can compile with the msvc compiler. If you go to the bottom left, you can see "Bucky 4" and below it "Debug". Click on it and select MSVC if you can find it. If you can't, then go to "Projects" in the big left menue and add the Kit "MSVC".



  • @JKSH said:

    One thing to keep in mind: The different versions of MSVC are incompatible. If the Qt DLLs are built with MSVC 2010, then you cannot use those DLLs with MSVC 2012.
    Since the user wants to use MSVC 2010, he will need to download the binaries built with MSVC 2010.

    But if you've got just c++ code, then you maybe can compile it with a newer MSVC without problems.



  • @onek24

    Yes, the code is C++. My problem from the beginning was that I couldn’t run using MSVC.
    Here is the “Kits”:Kits
    Here is “Debug” options:Debug

    When I click on MSVC2013, it gives the same compiler error.
    I think because my installed MVS is 2010, and this Qt works with MVS 2013. But just I wanted to be sure that it is possible to work with MinGW as a compiler for my GUI of C++ code or I need to install MVS2013?



  • @Rela

    Okay, run the MaintenanceTool and select the MSVC2010 packages. Install them and afterwards try again. WIth that you should be able to compile with MSVC2010. Otherwise you might try installing MSVC2013 from the windows site and compile it with MSVC2013. I - personally - don't like MinGW, but you could try compiling your algorithm-code with MinGW, i can't tell if it will work since i don't know the code.



  • @onek24

    Thanks.
    I selected the MSVC2010 32-bit OpenGL from the list in Maintenance toll, then in Projects I selected "Desktop Qt 5.4.2 MSVC2010 OpenGL 32bit" in "Add Kit" list, run and build it, and ran the program and it worked. Build & Run
    I hope it works later with my code also, but does it matter my computer is 64 bit?



  • @Rela said:

    Thanks.
    I selected the MSVC2010 32-bit OpenGL from the list in Maintenance toll, then in Projects I selected "Desktop Qt 5.4.2 MSVC2010 OpenGL 32bit" in "Add Kit" list, run and build it, and ran the program and it worked. Build & Run
    I hope it works later with my code also, but does it matter my computer is 64 bit?

    You're welcome. Well, it shouldnt. You can run 32-bit and 64-bit applications on a 64-bit machine, but only 32-bit applications on a 32-bit machine. If your code is explicitely designed to work with 64-bit(using 64-bit integers or whatever), than it might not work with 32-bit. On the other hand, if it works with 32-bit, than it will work with 64-bit.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.