Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. which is better, MinGW64 or MSVC 2019 64bit for general use applications.
Qt 6.11 is out! See what's new in the release blog

which is better, MinGW64 or MSVC 2019 64bit for general use applications.

Scheduled Pinned Locked Moved Unsolved General and Desktop
5 Posts 4 Posters 4.3k 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.
  • B Offline
    B Offline
    Blackzero
    wrote on last edited by
    #1

    I'm making a 64bit based application for my small commercial, but it's better to use MinGW64 or MSVC2019 64 bit, what are the advantages and disadvantages of these two? I'm using dynamic not static applications.

    When I use MSVC on several laptops/computers, it requires vc_redistx64.

    JonBJ 1 Reply Last reply
    0
    • B Blackzero

      I'm making a 64bit based application for my small commercial, but it's better to use MinGW64 or MSVC2019 64 bit, what are the advantages and disadvantages of these two? I'm using dynamic not static applications.

      When I use MSVC on several laptops/computers, it requires vc_redistx64.

      JonBJ Offline
      JonBJ Offline
      JonB
      wrote on last edited by
      #2

      @Blackzero
      Although I am a fan of open source applications, and for "general use" these toolchains are probably equally suitable, I would have to say that if I had to pick one to work with for Windows applications it would have to be MSVC. I assume it is much more widely used than MinGW. It has a wider set of tools. Its IDE is superior (though if you are using Qt/Creator this may not be an issue). It has wider interoperability with certain third-party products. Even in Qt certain platform-specific modules can only be compiled with MSVC not MinGW: for example, if you want Bluetooth or WebEngine support under Windows you have to be using MSVC, they are not available for MinGW.

      One thing in favour of MinGW is if you are developing cross-platform to include Linux, where it is the equivalent of the gcc you would use there.

      Especially when using Qt's platform/compiler abstraction layer you should not be writing compiler-specific code. You could start with the MinGW supplied with Qt (instead of installing MSVC yourself) and at a later date switch to MSVC relatively painlessly.

      Those are my thoughts.

      B 1 Reply Last reply
      1
      • JonBJ JonB

        @Blackzero
        Although I am a fan of open source applications, and for "general use" these toolchains are probably equally suitable, I would have to say that if I had to pick one to work with for Windows applications it would have to be MSVC. I assume it is much more widely used than MinGW. It has a wider set of tools. Its IDE is superior (though if you are using Qt/Creator this may not be an issue). It has wider interoperability with certain third-party products. Even in Qt certain platform-specific modules can only be compiled with MSVC not MinGW: for example, if you want Bluetooth or WebEngine support under Windows you have to be using MSVC, they are not available for MinGW.

        One thing in favour of MinGW is if you are developing cross-platform to include Linux, where it is the equivalent of the gcc you would use there.

        Especially when using Qt's platform/compiler abstraction layer you should not be writing compiler-specific code. You could start with the MinGW supplied with Qt (instead of installing MSVC yourself) and at a later date switch to MSVC relatively painlessly.

        Those are my thoughts.

        B Offline
        B Offline
        Blackzero
        wrote on last edited by
        #3

        @JonB said in which is better, MinGW64 or MSVC 2019 64bit for general use applications.:

        @Blackzero
        Although I am a fan of open source applications, and for "general use" these toolchains are probably equally suitable, I would have to say that if I had to pick one to work with for Windows applications it would have to be MSVC. I assume it is much more widely used than MinGW. It has a wider set of tools. Its IDE is superior (though if you are using Qt/Creator this may not be an issue). It has wider interoperability with certain third-party products. Even in Qt certain platform-specific modules can only be compiled with MSVC not MinGW: for example, if you want Bluetooth or WebEngine support under Windows you have to be using MSVC, they are not available for MinGW.

        One thing in favour of MinGW is if you are developing cross-platform to include Linux, where it is the equivalent of the gcc you would use there.

        Especially when using Qt's platform/compiler abstraction layer you should not be writing compiler-specific code. You could start with the MinGW supplied with Qt (instead of installing MSVC yourself) and at a later date switch to MSVC relatively painlessly.

        Those are my thoughts.

        yes so far I have been using MSVC2019 but most laptops require vc_redist so that the application does not error, I want to make it static so that it does not require vc_redist but the price is quite even, if I use open source static it is not possible because my goal is for my own small commercial.

        1 Reply Last reply
        0
        • piervalliP Offline
          piervalliP Offline
          piervalli
          wrote on last edited by
          #4

          Usually big or small applications need extra files or images. If you see use Inno setup to distribute the application can install vc_redist automatically.

          1 Reply Last reply
          0
          • S Offline
            S Offline
            SimonSchroeder
            wrote on last edited by
            #5

            I have personally always been using MSVC on Windows and would always pick this as a compiler. The Visual Studio debugger is a lot better than the one built in to Qt Creator (debugging in Qt Creator can be terribly slow on Windows taking several minutes for just a single step).

            vc_redist can be a little bit annoying. However, when you are using an installer for your software this can be included as a dependency and will be fine.

            @Blackzero said in which is better, MinGW64 or MSVC 2019 64bit for general use applications.:

            if I use open source static it is not possible because my goal is for my own small commercial.

            This is not entirely true. In order to use open source static you need to compile Qt yourself. This is doable. The LGPL requires for the user to be able to relink with a different Qt version. As long as you are willing to provide your objects files (maybe already linked into a static library) together with an explanation of how to link to static Qt libraries, this is also feasible. Even though the LGPL provides these rights to the user, in general it is highly unlikely that anyone will make use of this right. This might be a risk you are willing to take (i.e. the risk that you never have to effectively provide a way for a user to relink with a different static Qt version because noone will ever make use of this right). (I'm not a lawyer; this is not legal advice.)

            1 Reply Last reply
            1

            • Login

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