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. Building Qt 5.2.1 in latest Visual Studios

Building Qt 5.2.1 in latest Visual Studios

Scheduled Pinned Locked Moved Installation and Deployment
39 Posts 4 Posters 12.1k Views
  • 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
    mwpowellhtx
    wrote on last edited by
    #1

    Hello,

    I am evaluating Qt 5.2.1 using the latest Visual Studios; at least VS2012 Update 4, and/or VC++ November 12 CTP, whichever gets me the latest possible compiler compliance support.

    I will also try building with VS2013, which also has Update 1 available, for the same reason: latest possible compiler support.

    I don't necessarily care about any QtCreator or anything like that. In fact, we'll likely be supporting and/or building through Visual Studio, if possible.

    For what it's worth, as far as I know, for this application we don't care about UI parts, just the QtCore.

    Has anyone build in these scenarios in the latest possible Qt versions?

    I am hesitant to buy into any hype, so keep it straight. Of course I could also be a biased bigot, but that's okay.

    Best regards,

    Michael

    1 Reply Last reply
    0
    • JKSHJ Offline
      JKSHJ Offline
      JKSH
      Moderators
      wrote on last edited by
      #2

      Hi,

      Yes I regularly built Qt's latest source code from git using VS 2012, and then using VS 2013 when it came out.

      My latest VS 2013 build was done 1 week ago.

      The instructions are at http://qt-project.org/wiki/Building_Qt_5_from_Git

      Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

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

        Thanks. It's a good start. Ah, with the perpetual take on dependencies... (i.e. Perl, Python, etc).

        Now, I won't need QtWebKit I don't think. We just want QtCore-only. This can be isolated from the graphical parts of Qt?

        Thank ye...

        1 Reply Last reply
        0
        • sierdzioS Offline
          sierdzioS Offline
          sierdzio
          Moderators
          wrote on last edited by
          #4

          Release packages (.zip for Windows) do not depend on Perl. If you skip webkit and qtquick, you also do not need Python.

          (Z(:^

          1 Reply Last reply
          0
          • M Offline
            M Offline
            mwpowellhtx
            wrote on last edited by
            #5

            Thanks. That's fine, but we might like to build for: 1) multi-threaded, 2) dynamic and/or static DLL, etc. This all gets configured in the configure.sh?

            1 Reply Last reply
            0
            • sierdzioS Offline
              sierdzioS Offline
              sierdzio
              Moderators
              wrote on last edited by
              #6

              Yes. Default is to use multiple threads and DLLs. Run configure --help to get more info.

              (Z(:^

              1 Reply Last reply
              0
              • M Offline
                M Offline
                mwpowellhtx
                wrote on last edited by
                #7

                MINGW is a hard requirement? Or we can build with MSVC? i.e. XPLATFORM_MINGW=yes

                1 Reply Last reply
                0
                • M Offline
                  M Offline
                  mwpowellhtx
                  wrote on last edited by
                  #8

                  How to build without the WebKit or other unnecessary (for our purposes) parts? Those are not listed in the help.

                  1 Reply Last reply
                  0
                  • sierdzioS Offline
                    sierdzioS Offline
                    sierdzio
                    Moderators
                    wrote on last edited by
                    #9

                    [quote author="mwpowellhtx" date="1393690963"]MINGW is a hard requirement? Or we can build with MSVC? i.e. XPLATFORM_MINGW=yes[/quote]

                    JKSH has already told you, that MSVC is fine... I usually use MSVC 2010 and it works well.

                    No, MinGW is not needed. Actually, Qt will not work if you mix MSVC and MinGW.

                    [quote]How to build without the WebKit or other unnecessary (for our purposes) parts? Those are not listed in the help.[/quote]

                    "skip" command is your friend. Alternatively, you can just delete the module folder. It should still compile fine. Here is what I use to compile Qt on Windows:
                    @
                    configure -opensource -confirm-license -opengl desktop -mp -skip webkit -skip qtquick1 -nomake tests -nomake examples -prefix CD/qtbase
                    @

                    CD must be enclosed with pecentage signs (I can't put them here on forum; the system blocks it). Compilation takes 15 minutes on Linux, and about an hour on Windows (for a quad-core CPU with HT).

                    (Z(:^

                    1 Reply Last reply
                    0
                    • sierdzioS Offline
                      sierdzioS Offline
                      sierdzio
                      Moderators
                      wrote on last edited by
                      #10

                      And to specify the compiler, you need to use "-platform" flag (and then just pass one of the mkspecs).

                      (Z(:^

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        mwpowellhtx
                        wrote on last edited by
                        #11

                        Again, maybe I am bigoted re: configure, but where are the <parts> listed in the help? This is not a Qt problem, per se, but an "accepted convention", would-be mid-range end-users such as myself are simply expected to "know" what to nomake or skip. Anyhow, I cannot seem to see help again since the last failed attempt: command not found. So I need start fresh it seems... Oi. BTW, I am following the steps on the build page, but it's not very well outlined: Building Qt 5 from Git. I would like to build with JOM if I can somehow make that work, since I have 8 cores, to cut the time down some.

                        1 Reply Last reply
                        0
                        • sierdzioS Offline
                          sierdzioS Offline
                          sierdzio
                          Moderators
                          wrote on last edited by
                          #12

                          IIRC "parts" is more or less Qt modules.

                          (Z(:^

                          1 Reply Last reply
                          0
                          • M Offline
                            M Offline
                            mwpowellhtx
                            wrote on last edited by
                            #13

                            That's not what I was asking. I get that: parts == modules. What I was asking is: where are the list of parts? Generally, configure(s) do not list these, and it is annoying as hell.

                            1 Reply Last reply
                            0
                            • M Offline
                              M Offline
                              mwpowellhtx
                              wrote on last edited by
                              #14

                              What would a configure look like: we're not doing any Qt UI, we want QtCore only. I tried even the earlier configure, and it chokes:

                              I:\Source\qt5>configure -opensource -confirm-license -opengl desktop -mp -skip webkit -skip qtquick1 -nomake tests -nomake examples -prefix CD/qtbase

                              • cd qtbase
                              • I:\Source\qt5\qtbase\configure.bat -top-level -opensource -confirm-license -opengl desktop -mp -skip webkit -skip qtquick1 -nomake tests -nomake examples -prefix CD/qtbase
                                Please wait while bootstrapping configure ...
                                <srcbase> = I:/Source/qt5/qtbase
                                <outbase> = I:/Source/qt5/qtbase

                              Microsoft (R) Program Maintenance Utility Version 11.00.60610.1
                              Copyright (C) Microsoft Corporation. All rights reserved.

                                  cl -c -Yc -nologo -Zm200 -Zc:wchar_t -MT -W3 -GR -EHsc -w34100 -w34189 -DUNICODE -DQT_NO_CODECS -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_COMPRESS -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DQT_BUILD_CONFIGURE -DCOMMERCIAL_VERSION -I"..\..\include" -I"..\..\include\QtCore" -I"..\..\include\QtCore\5.3.0" -I"..\..\include\QtCore\5.3.0\QtCore" -I"I:\Source\qt5\qtbase\tools\shared" -I"I:\Source\qt5\qtbase\mkspecs\win32-msvc2008" -Fpconfigure_pch.pch -Foconfigure_pch.obj -TP I:\Source\qt5\qtbase\tools\configure\configure_pch.h
                              

                              NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\cl.EXE"' : return code '0xc0000135'
                              Stop.

                              1 Reply Last reply
                              0
                              • M Offline
                                M Offline
                                mwpowellhtx
                                wrote on last edited by
                                #15

                                I am thinking that my environment is confused, but I don't know if it's a configuration issues, the fact that I've got VS2010 and VS2012 and VS2013 all installed, or what.

                                I may give the installer a gander after all and see if it will at least get us by. Would be nice if I could get past this issue though.

                                1 Reply Last reply
                                0
                                • sierdzioS Offline
                                  sierdzioS Offline
                                  sierdzio
                                  Moderators
                                  wrote on last edited by
                                  #16

                                  Here is a list of all modules: "link":http://qt-project.org/doc/qt-5/qtmodules.html.

                                  Seems like you are using wrong mkspecs. Are you running that from your MSVC-enabled command line? To make the compiler choice specific, add this to configure:
                                  @
                                  -platform win32-msvc2013
                                  @

                                  (or msvc2012, depending on your choice). If you really, really just need QtCore, it will probably take some iterations to nail a working configure line, as it is a highly specific use case (most people compile whole Qt, some skip webkit and QtQuick1, but almost nobody goes further :P).

                                  I'll give you 2 ways to do it, but there are many more.

                                  remove all folders from your Qt dir, except for qtbase, qttools and qtdoc, then run configure as usual. This will still not be ideal for you: modules like QtNetwork are inside qtbase (but it is a small module, compiles in seconds)

                                  keep patiently removing all Qt modules with -skip flag...

                                  (Z(:^

                                  1 Reply Last reply
                                  0
                                  • sierdzioS Offline
                                    sierdzioS Offline
                                    sierdzio
                                    Moderators
                                    wrote on last edited by
                                    #17

                                    OK, I'll throw in the third way: run the configure line as usual, but then don't run the global Makefile. Instead, cd into qtbase and run nmake (or jom) there. This should only build QtCore, QtNetwork, and other base modules.

                                    (Z(:^

                                    1 Reply Last reply
                                    0
                                    • M Offline
                                      M Offline
                                      mwpowellhtx
                                      wrote on last edited by
                                      #18

                                      As long as I can identify them (more or less), yes. Thanks for the tips (and the patience!)...

                                      1 Reply Last reply
                                      0
                                      • M Offline
                                        M Offline
                                        mwpowellhtx
                                        wrote on last edited by
                                        #19

                                        I added -platform win32-mscv2012, and same error. Yes, I need an MSVC command line?

                                        1 Reply Last reply
                                        0
                                        • M Offline
                                          M Offline
                                          mwpowellhtx
                                          wrote on last edited by
                                          #20

                                          I'm just reading the notes: http://qt-project.org/wiki/Building_Qt_5_from_Git

                                          And nowhere after configure does it say to CD qtbase when using jom, or any of the other options. Or maybe I am reading it wrong?

                                          Oh! Bit of a clue: the prefix is where the stuff lands, so that's why...

                                          I am spoiled by IDEs, workspace and project files, which are a dialect all their own...

                                          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