Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

    Update: Forum Guidelines & Code of Conduct


    Qt World Summit: Early-Bird Tickets

    Is there a way: qt 4.3.4 with Studio 2010?

    Installation and Deployment
    3
    8
    5666
    Loading More Posts
    • 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.
    • D
      drago60000 last edited by

      Hello, together

      unfortunately my search efforts did not end with success so I have to ask this question here: Is there a way to get Qt 4.3.4 to run with Visual Studio 2010?

      I already managed to build Qt 4.7.1 under Studio 2010 using the Qt-everywhere-commercial package, so I already know the general direction this question should lead, but of course the steps I used for the new version don't work at all for 4.3.4.

      Before I put huge efforts into an expedition I would like to see if anybody has already done this and whether this could work at all.

      So please enlighten me.

      Drago

      (hope this is the correct forum...)

      1 Reply Last reply Reply Quote 0
      • G
        giesbert last edited by

        Hi drago60000,

        theoretically it should work. What will definitly miss is the mkspecs/win32-msvc2010 which you will have to create (perhaps a copy from 4.7.1 will work???). Then configure and nmake should do the job.

        Nokia Certified Qt Specialist.
        Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

        1 Reply Last reply Reply Quote 0
        • D
          drago60000 last edited by

          Hi, Gerolf

          thanks for your feedback, but I fear it is not that simple. I just tried the very simple approach doing the following.

          1. Downloaded qt-win-opensource-src-4.3.4.zip from ftp.qt.nokia.com/qt/source
            I used this one because the commercial version of 4.3.4 is not available in the customer portal of digia

          2. unpacked the zip in the goal dir

          3. configured environment (QMAKESPEC, Path, QTDIR)

          up to here all is similar to version 4.7.1

          1. copied makespec msvc2010 from 4.7.1 to 4.3.4

          2. started configure

          result:

          Creating qmake...
          execute: File or path is not found (make)
          execute: File or path is not found (make)
          Cleaning qmake failed, return code -1

          Seems that configure looks for a make, but I can only provide nmake.

          I also tried qt-all instead of qt-win but the result is the same. qt-everywhere (which i used for 4.7.1) is not available for 4.3.4, since it starts with 4.6

          So that seems a little more complicated.

          1 Reply Last reply Reply Quote 0
          • G
            giesbert last edited by

            please compare the content of the mkspec for 2010 with the one you used before (2008? 2005?).
            perhaps you have to adopt it.

            and please try, whether you could configure for 2008 with the same settings, only QMAKESPEC changed.

            please provide your environment (cmd --> set) for all studio / qt realted settings

            your configure call

            perhaps the complete configure output as file on some file hosters and a link to check for other errors that might happen.

            Nokia Certified Qt Specialist.
            Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

            1 Reply Last reply Reply Quote 0
            • D
              drago60000 last edited by

              I think the output of configure is short enough to post it here, because it stops near the start


              @
              D:WorkQt4.3.4_win>configure

              This is the Qt/Windows Open Source Edition.

              You are licensed to use this software under the terms of
              the GNU General Public License (GPL) version 2 or 3.

              Type '2' to view the GNU General Public License version 2 (GPLv2).
              Type '3' to view the GNU General Public License version 3 (GPLv3).
              Type 'y' to accept this license offer.
              Type 'n' to decline this license offer.

              Do you accept the terms of the license?
              y
              Environment:
              INCLUDE=
              C:Program Files (x86)Microsoft Visual Studio 10.0VCINCLUDE
              C:Program Files (x86)Microsoft Visual Studio 10.0VCATLMFCINCLUDE
              C:Program Files (x86)Microsoft SDKsWindowsv7.0Ainclude

              LIB=
                C:Program Files (x86)Microsoft Visual Studio 10.0VCLIB
                C:Program Files (x86)Microsoft Visual Studio 10.0VCATLMFCLIB
                C:Program Files (x86)Microsoft SDKsWindowsv7.0Alib
              
              PATH=
                C:Program Files (x86)Microsoft Visual Studio 10.0VSTSDBDeploy
                C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDE
                C:Program Files (x86)Microsoft Visual Studio 10.0VCBIN
                C:Program Files (x86)Microsoft Visual Studio 10.0Common7Tools
                C:WindowsMicrosoft.NETFrameworkv4.0.30319
                C:WindowsMicrosoft.NETFrameworkv3.5
                C:Program Files (x86)Microsoft Visual Studio 10.0VCVCPackages
                C:Program Files (x86)HTML Help Workshop
                C:Program Files (x86)Microsoft Visual Studio 10.0Team ToolsPerformance
              

              Tools
              C:Program Files (x86)Microsoft SDKsWindowsv7.0AbinNETFX 4.0 Tools
              C:Windowssystem32
              C:Windows
              C:WindowsSystem32Wbem
              C:WindowsSystem32WindowsPowerShellv1.0
              C:Program Files (x86)ATI TechnologiesATI.ACECore-Static
              d:workqt4.3.4_winbin
              C:Program Files (x86)Microsoft Visual Studio 10.0VCbin
              C:Program FilesCommon FilesMicrosoft SharedWindows Live
              You are licensed to use this software under the terms of the GNU GPL version 2 o
              r 3.
              See D:/Work/Qt/4.3.4_win/LICENSE.GPL2
              or D:/Work/Qt/4.3.4_win/LICENSE.GPL3

              Configuration:
              minimal-config
              small-config
              medium-config
              large-config
              full-config
              build_all
              debug
              Qt Configuration:
              release
              debug
              zlib
              png
              accessibility
              qt3support
              opengl
              ipv6
              minimal-config
              small-config
              medium-config
              large-config
              full-config

              QMAKESPEC...................win32-msvc2010 (env)
              Architecture................windows
              Maketool....................make
              Debug symbols...............yes
              Accessibility support.......yes
              STL support.................yes
              Exception support...........yes
              RTTI support................yes
              MMX support.................yes
              3DNOW support...............yes
              SSE support.................yes
              SSE2 support................yes
              OpenGL support..............yes
              Direct3D support............no
              OpenSSL support.............no
              QDBus support...............no
              Qt3 compatibility...........yes

              Third Party Libraries:
              ZLIB support............qt
              GIF support.............plugin
              TIFF support............plugin
              JPEG support............plugin
              PNG support.............qt
              MNG support.............plugin

              Styles:
              Windows.................yes
              Windows XP..............yes
              Windows Vista...........yes
              Plastique...............yes
              Cleanlooks..............yes
              Motif...................yes
              CDE.....................yes

              Sql Drivers:
              ODBC....................no
              MySQL...................no
              OCI.....................no
              PostgreSQL..............no
              TDS.....................no
              DB2.....................no
              SQLite..................plugin (qt)
              SQLite2.................no
              InterBase...............no

              Sources are in..............D:WorkQt4.3.4_win
              Build is done in............D:WorkQt4.3.4_win
              Install prefix..............D:WorkQt4.3.4_win
              Headers installed to........D:WorkQt4.3.4_wininclude
              Libraries installed to......D:WorkQt4.3.4_winlib
              Plugins installed to........D:WorkQt4.3.4_winplugins
              Binaries installed to.......D:WorkQt4.3.4_winbin
              Docs installed to...........D:WorkQt4.3.4_windoc
              Data installed to...........D:WorkQt4.3.4_win
              Translations installed to...D:WorkQt4.3.4_wintranslations
              Examples installed to.......D:WorkQt4.3.4_winexamples
              Demos installed to..........D:WorkQt4.3.4_windemos

              Creating qmake...
              execute: File or path is not found (make)
              execute: File or path is not found (make)
              Cleaning qmake failed, return code -1


              Environment

              Path=C:Program Files (x86)Microsoft Visual Studio 10.0VSTSDBDeploy;C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDE;C:Program Files (x86)Microsoft Visual Studio 10.0VCBIN;C:Program Files (x86)Microsoft Visual Studio 10.0Common7 Tools;C:WindowsMicrosoft.NETFrameworkv4.0.30319;C:WindowsMicrosoft.NETFrameworkv3.5;C:Program Files (x86)Microsoft Visual Studio 10.0VCVCPackages;C:Program Files (x86)HTML Help Workshop;C:Program Files (x86)Microsoft Visual Studio 10.0Team ToolsPerformance Tools;C:Program Files (x86)Microsoft SDKsWindowsv7.0AbinNETFX 4.0 Tools;C:Program Files (x86)Microsoft SDKsWindowsv7.0Abin;%CommonProgramFiles%Microsoft SharedWindows Live;C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:Program Files (x86)ATI TechnologiesATI.ACECore-Static;d:wo
              rkqt4.3.4_winbin;C:Program Files (x86)Microsoft Visual Studio 10.0VCbin;
              QMAKESPEC=win32-msvc2010
              QTDIR=d:workqt4.3.4_win
              VCINSTALLDIR=C:Program Files (x86)Microsoft Visual Studio 10.0VC
              @

              There are some differences between the mkspecs, but I think the basic question is, why make is used as Maketool (see output) and could it even work with nmake?

              Right now we get to the point I'm trying to avoid. Although I like experiments like this I would really like to know if this (or something similar) has been done before because I am a bit short of time right now and must avoid testing different setups for hours.

              Drago

              1 Reply Last reply Reply Quote 0
              • G
                giesbert last edited by

                it should use nmake, not make.
                So the point is, why does it use try to use make?

                you could have a look at qmake make files, which are located here:
                d:\work\qt4.3.4_win\qmake\Makefile.win32

                this should be executed. on 4.7.2, there is some special statement at the top, checking the mkspecs. perhaps this also needs to be changed:

                @
                !IF "$(QMAKESPEC)" == "win32-msvc" || "$(QMAKESPEC)" == "win32-msvc.net" || "$(QMAKESPEC)" == "win32-msvc2002" || "$(QMAKESPEC)" == "win32-msvc2003" || "$(QMAKESPEC)" == "win32-msvc2005" || "$(QMAKESPEC)" == "win32-msvc2008" || "$(QMAKESPEC)" == "win32-msvc2010" || "$(QMAKESPEC)" == "win32-icc"
                @

                perhaps, based on this if, it fails and trys another makefile which uses make instead of nmake. I would give it a try.

                Nokia Certified Qt Specialist.
                Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

                1 Reply Last reply Reply Quote 0
                • D
                  drago60000 last edited by

                  After some research I found out that the decision between make and nmake is part of the compiled configure.exe. The source code is part of the package and there you see that the decision depends on the name of the makespec. If it ends on msvc2005 (and some others), nmake is chosen, else make. Msvc2008 is not in there of course so it chooses make.

                  Probably one could now change the source code and rebuild the configure tool, but it is a Qt application so you need Qt to build it (sigh). Maybe I could have done this with Qt 4.7.x, but I decided to try something else.

                  I just configured Qt with the makespec msvc2005. The configuration part then is no problem, even with Studio 2010.

                  The next is calling nmake, that also seems no problem except there are messages about missing manifest files. A restart of nmake seems to fix that problem. Every message of this kind stops nmake and cannot be ignored (because it's a fatal error?) with -I so I went the hard way and restarted nmake after each error of this kind (some 30 times...) and finally nmake was done.

                  I am not quite sure what my result is now. I have a compiled version 4.3.4. It is able to "unpack" my solution (i.e. build vcproj files from pro files) from command line but it produces some error messages on the way, but those could be a Windows 7 problem because they are environment warnings.

                  I have a Studio 2010 with the latest Qt integration version (1.1.8 I think). Trying to open the pro files from there resulted in a message that the Qt version is not supported by this integration version. On the other hand: older integration versions won't do with Studio 2010 so I have now a mixture of versions.

                  However: I managed to build my Qt-application (the one I do this experiment for) with some minor problems (environmental). In the debugger I can see the content of e.g. QString, so the integration works at least partly. I did not try to use any other feature of the integration up to now.

                  For now I reached my goal at least for the main part. But some questions are still open.

                  • Will the "wrong" qmakespec lead to a problem later on?
                  • Which parts of the integration will be unusable?
                  • Are there known problems generating vcproj files from "old" pro files under Windows 7?
                  • What about those manifest errors during the Qt build?

                  If somebody has hints for these questions and maybe to the general idea using msvc2005 with studio 2010, I would really like to read it here ;-)

                  Drago

                  1 Reply Last reply Reply Quote 0
                  • M
                    MarkSmit last edited by

                    Hi Gerolf,

                    I just set up version 4.5.2 for VS2010 with a little different approach. First I copied the specs from win32-msvs2008 to win32-msvs2010 and modified the file qmake.conf to use the correct _MSC_VER value (1600).

                    Then (unfortunately) I had to modify the file makefile.win32 at the folder qmake. At the top I had to add the VS2010 specs, just like you already described.

                    Then at the command line I ran configure.exe with at least the option "-make nmake" to be sure that nmake will be used (found the option in the source of configure.exe).
                    I even had to set the option "-no-qt3support" for building that part gave me an error and I do not need the Qt3 support.

                    After this I configure.exe did run almost correct, only copying qmake.exe failed. Copied this by hand and restarted configure.exe; then it completed normal.

                    Finally I could run nmake and build the library.

                    hope this helps,
                    Mark

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post