Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt Creator and other tools
  4. MinGW vs. Cl in Nokia SDK
Qt 6.11 is out! See what's new in the release blog

MinGW vs. Cl in Nokia SDK

Scheduled Pinned Locked Moved Qt Creator and other tools
6 Posts 4 Posters 5.0k Views 1 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.
  • M Offline
    M Offline
    mjdome2
    wrote on last edited by
    #1

    Hi,

    I hope this is the correct place for this question and that someone can help.
    I'm curious why Nokia SDK has both a Qt framework using CL (Simulator Qt for Visual Studio 2008) and one for MinGW (Simulator Qt for MinGW 4.4) on Windows host.
    I suppose some folks are familiar with CL and want to use it for Qt development, while others like gcc.
    Fair enough.

    Are there potential incompatibilities between the two? For example, a C++ program developed using CL may not compile using G++ and vice versa. Is this a common happening? Or are typical Qt programs too high level or Qt-specific enough that underlying compiler incompatibilities rarely impact a user code?

    Thanks and regards,

    Max

    1 Reply Last reply
    0
    • G Offline
      G Offline
      goetz
      wrote on last edited by
      #2

      Qt works happily with both compilers.

      But: you cannot mix the object code from the one with that from the other. That means you have to stick to one of both for a single project. For the reasons see the "Name Manglig":http://en.wikipedia.org/wiki/Name_mangling article on wikipedia.

      http://www.catb.org/~esr/faqs/smart-questions.html

      1 Reply Last reply
      0
      • M Offline
        M Offline
        mjdome2
        wrote on last edited by
        #3

        Thanks. Yes, C++ object models are different.

        Here's a scenario - I suspect I know the answer. MSVC uses declspecs for specifying things like visibility and inlining. GCC uses attributes. If your C++ code used declspecs and worked fine with MSVC, you'd have problems porting to a device that used a cross gcc. You'd have to remove the attributes.

        I'm curious if this is a common issue facing folks porting from Windows.

        Best regards, Max

        1 Reply Last reply
        0
        • T Offline
          T Offline
          tobias.hunger
          wrote on last edited by
          #4

          Well, Qt can be compiled using g++ as well as MSVC (and a lot of other compilers, too;-). So can Qt Creator and lots of other Qt applications. So writing an application that runs using a wide range of compiler is possible.

          Of course you can not use compiler specific features for this to work. If you really need to do some platform/compiler specific code then you can always use preprocessor statements to mask those code segments from all the systems that do not understand them.

          1 Reply Last reply
          0
          • X Offline
            X Offline
            xsacha
            wrote on last edited by
            #5

            I have encountered certain painting differences between the two compilers. I didn't follow up with a bug report. But there are of course performance differences.
            Also some people will use non-Qt code that requires a certain compiler so they need both to be available.
            I have some Augmented Reality projects that only work in MingW (not MSVC) for example.

            • Sacha
            1 Reply Last reply
            0
            • M Offline
              M Offline
              mjdome2
              wrote on last edited by
              #6

              Thanks. This is very helpful!

              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