Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. Using Qt5.5 with MinGW 5.1
Forum Updated to NodeBB v4.3 + New Features

Using Qt5.5 with MinGW 5.1

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
mingw
14 Posts 3 Posters 6.2k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    shadowmouse
    wrote on last edited by shadowmouse
    #1

    I've recently started using Qt as a way to make a professional looking GUI for my A level course work, which I've already done quite a lot of with MinGW 5.1. Is there any way I can set up Qt to use MinGW 5.1 (or greater) rather than MSVC 2013, which is the only one of the installed kits which doesn't have something missing? If it helps, I'm using Windows 10 (although I also have Ubuntu, I haven't set it up on there yet).

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi and welcome to devnet,

      You can use the MinGW package however IIRC, it's currently using 4.9.2. You may have to compile Qt yourself if you want to use 5.1.

      Note that the package also provide MinGW itself.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • S Offline
        S Offline
        shadowmouse
        wrote on last edited by
        #3

        Thank you for the reply. I noticed on the installer that it allows you to install 4.9.1, however I would much rather avoid downgrading my MinGW version. I will attempt to follow this: http://doc.qt.io/qt-5/windows-building.html once I've finished my exams and I'll post again when something goes wrong.

        1 Reply Last reply
        0
        • S Offline
          S Offline
          shadowmouse
          wrote on last edited by
          #4

          Okay, I'm using the link I posted above, and I'm extremely confused by step 3. I rarely use the command line, the only library I've ever build from source is SFML, which is significantly easier. Can someone explain what I should do for step 3 to set it up with MinGW? For the record, I made the file qt5vars.cmd, with these contents:
          REM Set up \MinGW, where <arch> is \c x86
          SET PATH=C:\MinGW\mingw32\bin;%PATH%
          SET _ROOT=C:\Qt\5.5
          SET PATH=%ROOT%\qtbase\bin;%ROOT:\gnuwin32\bin;%PATH%
          SET QMAKESPEC=win32-g++
          SET _ROOT=
          I ran it, a command window opened and closed and then when I use a command prompt to try and run configure, it says that it doesn't understand the command configure.

          1 Reply Last reply
          0
          • SGaistS Offline
            SGaistS Offline
            SGaist
            Lifetime Qt Champion
            wrote on last edited by
            #5

            You are missing the _ before ROOT on your SET PATH line.

            Did you create the desktop link like recommended ?

            Interested in AI ? www.idiap.ch
            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

            1 Reply Last reply
            0
            • Chris KawaC Offline
              Chris KawaC Offline
              Chris Kawa
              Lifetime Qt Champion
              wrote on last edited by Chris Kawa
              #6

              I ran it, a command window opened and closed and then when I use a command prompt to try and run configure

              That's not how .cmd files work. If you just click it it creates a cmd session, runs the commands and closes the session. All changes it made are at this point lost. If you want to use batch files you need to run them from a running session, i.e. call them from cmd.

              Here are basic instructions to compile Qt with MinGW. I'll assume some stuff, adjust to your needs:

              • You did not pollute PATH with any other compiler paths (if you did then you asked for trouble and you got it).
              • Your MinGW installation path is C:\MinGW\mingw32
              • Your Qt sources are in C:\Qt\src
              • You created a build directory: C:\Qt\build
              • You created a final destination directory: C:\Qt\mingw53_x64 //I'm using MinGW 5.3 x64, call the dir whatever you want

              The steps:

              • open command line (cmd.exe)
              • SET PATH = %PATH%;C:\MinGW\mingw32\bin
              • cd C:\Qt\build
              • C:\Qt\src\configure -prefix C:\Qt\mingw53_x64 -debug-and-release -opensource -confirm-license ...
                This will autodetect MinGW environment. No need for any environment variables mangling. Adjust configure call to whatever you need e.g. -nomake examples, -no-icu, -skip webengine etc. Read the docs for configure params available.
              • mingw32-make this will take a while
              • mingw32-make install this copies build artifacts to the prefix directory
              • delete the C:\Qt\build directory with all its contents
              1 Reply Last reply
              1
              • S Offline
                S Offline
                shadowmouse
                wrote on last edited by shadowmouse
                #7

                That's one of the things I didn't understand. Does it just mean to put qt5vars.cmd on the desktop? Or make a shortcut to something else? I'm probably just being dense, but how do you make that desktop link?
                Chris Kawa, I hadn't seen your post when I wrote the above, I'll try following those steps tomorrow, I'm going to bed now. Thank you both for the help. :)

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  shadowmouse
                  wrote on last edited by shadowmouse
                  #8

                  After doing what you suggested, it came up with this. It also warned me that I didn't have ANGLE. Do I have to build that myself as well?

                  1 Reply Last reply
                  0
                  • Chris KawaC Offline
                    Chris KawaC Offline
                    Chris Kawa
                    Lifetime Qt Champion
                    wrote on last edited by Chris Kawa
                    #9

                    The instructions I gave were for a build with minimum dependencies i.e. without ANGLE or ICU.

                    To build without ANGLE pass -opengl desktop to configure options. To build without ICU pass -no-icu. That's the easiest way to build, but your build will have some restrictions. See Requirements for more info.

                    If you want to use ANGLE then DirectX SDK needs to be installed and path to it set via environment variables. It's done differently depending on version of the SDK you use.
                    Qt ships with its copy of ANGLE libraries so they are build along with Qt. You can also provide your own build via another environment variable. Refer to the link above again for details.

                    1 Reply Last reply
                    0
                    • S Offline
                      S Offline
                      shadowmouse
                      wrote on last edited by
                      #10

                      Thank you, it appears to have worked, however I don't know as when I uninstalled Qt, I uninstalled QtCreator with it because I assumed that the source would include QtCreator. I'll have to reinstall that, but once I have, how do I set it up to use the Qt that I've compiled myself?

                      1 Reply Last reply
                      0
                      • Chris KawaC Offline
                        Chris KawaC Offline
                        Chris Kawa
                        Lifetime Qt Champion
                        wrote on last edited by
                        #11

                        Qt Creator is a separate entity. It's not distributed along with the Qt's sources.
                        Follow the documentation to add your compiler and the debugger of your MinGW package. Then add Qt version and set up a kit with all of the above.
                        After that you can use that kit as any of the pre-built ones.

                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          shadowmouse
                          wrote on last edited by
                          #12

                          I've read the links you posted. I've just reinstalled Qt Creator using the standalone installer and when I go to add a Qt version, it can't auto detect any and I can't find any. The bin folder of my install directory, which I make-installed into has only a lot of dlls and a few exes, none of which are qmake. I did a search for qmake in the folder that I installed into and it came up with no results that match my search. For the record, it had auto detected my compiler and debugger already, so I've gone straight to add Qt version.

                          1 Reply Last reply
                          0
                          • Chris KawaC Offline
                            Chris KawaC Offline
                            Chris Kawa
                            Lifetime Qt Champion
                            wrote on last edited by
                            #13

                            qmake should be directly in the bin directory of your installation folder. If it isn't then something must have gone wrong during the install step.
                            Since something actually got compiled (you've got some dlls) I assume qmake was built and it was in the build directory.
                            If you removed the build directory already I'm afraid you'll have to build Qt again.

                            A long shot but I've heard of some anti-viruses interfere with the install step as it involves copying executables. That's one possible reason why it didn't copy over.
                            Can you share your full configure command ?

                            1 Reply Last reply
                            0
                            • S Offline
                              S Offline
                              shadowmouse
                              wrote on last edited by shadowmouse
                              #14

                              I did delete the build directory after it installed, so I'll do it again, and see if it works that time. I wrote a small batch file so I wouldn't have to keep retyping things:
                              @set /p sourcedir= "Enter the source directory "
                              @set /p mingwpath= "Enter the mingw installation path "
                              @set /p builddir= "Enter the build directory "
                              @set /p finaldir= "Enter the final directory "

                              cd %builddir%
                              call %sourcedir%\configure -prefix %finaldir% -debug-and-release -opensource -confirm-license -nomake examples -no-icu -skip webengine -opengl desktop

                              @echo configuration finished
                              pause

                              call mingw32-make

                              @echo making finished
                              pause

                              call mingw32-make install

                              @echo installing finished
                              pause

                              I removed the bit which added to the path after I'd done that once so that I didn't end up with duplicates in my path.

                              EDIT: Okay, it's finished making again, and it's produced exactly the same thing in the install directory (unsurprisingly). There is a qmake.exe in the build directory however, in fact the contents of the two are completely different.
                              The install directory has the following folders:
                              bin (4 exes and 24 dlls, nothing that has qmake in the name)
                              include (one folder per module)
                              lib (two folders and a load of prl files and a files)
                              mkspec (a modules folder which contains lots of pri files)
                              plugins (three folders, each full of dlls)

                              The build folder has qtbase, which contains the above as well as a few other folders including a qmake folder. It also has a qmake exe in the bin folder.

                              1 Reply Last reply
                              0

                              • Login

                              • Login or register to search.
                              • First post
                                Last post
                              0
                              • Categories
                              • Recent
                              • Tags
                              • Popular
                              • Users
                              • Groups
                              • Search
                              • Get Qt Extensions
                              • Unsolved