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
Forum Updated to NodeBB v4.3 + New Features

MinGW vs. Cl in Nokia SDK

Scheduled Pinned Locked Moved Qt Creator and other tools
6 Posts 4 Posters 4.1k 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