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. [SOLVED]Missing run time on Windows 7
QtWS25 Last Chance

[SOLVED]Missing run time on Windows 7

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

    Hello,

    I'm trying to deploy my app to a brand new install of Windows 7, but I'm getting the side-by-side configuration error.

    I'm building against the QtSDK.

    I've copied every DLL I think I might need into the same directory as the exe:

    msvcr90d.dll
    msvcr90.dll
    msvcp90.dll
    msvcp90d.dll
    QtCore4.dll
    QtCored4.dll
    QtGui4.dll
    QtGuid4.dll
    QtXml4.dll
    QtXmld4.dll

    Here's part of the sxstrace that seems to show that the exe directory is being probed:

    INFO: Begin assembly probing.
    INFO: Did not find the assembly in WinSxS.
    INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC90.DebugCRT\9.0.21022.8__1fc8b3b9a1e18e3b\Microsoft.VC90.DebugCRT.DLL.
    INFO: Attempt to probe manifest at Z:\Documents\work\SoftStep\SoftStepQT\qt-12step-deploy-win\Microsoft.VC90.DebugCRT.DLL.
    INFO: Attempt to probe manifest at Z:\Documents\work\SoftStep\SoftStepQT\qt-12step-deploy-win\Microsoft.VC90.DebugCRT.MANIFEST.
    INFO: Attempt to probe manifest at Z:\Documents\work\SoftStep\SoftStepQT\qt-12step-deploy-win\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.DLL.
    INFO: Attempt to probe manifest at Z:\Documents\work\SoftStep\SoftStepQT\qt-12step-deploy-win\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.MANIFEST.
    INFO: Did not find manifest for culture Neutral.
    INFO: End assembly probing.

    Any ideas?

    1 Reply Last reply
    0
    • P Offline
      P Offline
      p-himik
      wrote on last edited by
      #2

      You should read this articles:
      "Deploying an Application on Windows":http://developer.qt.nokia.com/doc/qt-4.7/deployment-windows.html#id-4dd365a0-4e08-4810-9d5b-5be62a8baaca
      "Redistribution of the shared C runtime component in Visual C++":http://support.microsoft.com/kb/326922
      And probably this:
      "DLL Hell":http://en.wikipedia.org/wiki/DLL_Hell

      Also if you want to deploy only release you don't need Qt*d4.dll. These are debug versions of Qt libraries.

      1 Reply Last reply
      0
      • B Offline
        B Offline
        babazaroni
        wrote on last edited by
        #3

        Thanks, I'm familiar with the first link. Basically it says I need to include the run time library which I have done.

        I'll check out the second link.

        I'm including debug and release right now just for debugging purposes as I'm still switching between them.

        1 Reply Last reply
        0
        • G Offline
          G Offline
          giesbert
          wrote on last edited by
          #4

          [quote author="babazaroni" date="1323954257"]
          I'm including debug and release right now just for debugging purposes as I'm still switching between them.[/quote]

          AFAIK the debug msvcrt* files are not allowed to distribute. (MS license)

          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
          0
          • B Offline
            B Offline
            babazaroni
            wrote on last edited by
            #5

            OK, then I assume the idea is to use a runl-time that's already on the machine. I suspect Vcredist_x86.exe application is involved with this.

            1 Reply Last reply
            0
            • B Offline
              B Offline
              babazaroni
              wrote on last edited by
              #6

              I just ran vcredist_x86. Still, my app is getting the side-by-side error. More research needed as I don't understand how my app will get matched up with the correct runtime.

              1 Reply Last reply
              0
              • G Offline
                G Offline
                giesbert
                wrote on last edited by
                #7

                vcredist installs the release dlls, not the debug ones.
                Which binary type do you run?

                if you have a VC there, you can open the binary with it and read the resources, there is an embedded manifest which tells you which side by side components are needed.

                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
                0
                • B Offline
                  B Offline
                  babazaroni
                  wrote on last edited by
                  #8

                  OK, I'll switch to release and see what happens.

                  I don't want to install Visual C on the target, as I want it top be pristine, just as a customer would start with.

                  1 Reply Last reply
                  0
                  • S Offline
                    S Offline
                    Scylla
                    wrote on last edited by
                    #9

                    If you want a side-by-side installation then note "this":http://connect.microsoft.com/VisualStudio/feedback/details/361682/vc9-sp1-generates-manifests-with-the-wrong-version-number

                    I had this problem this week.

                    1 Reply Last reply
                    0
                    • B Offline
                      B Offline
                      babazaroni
                      wrote on last edited by
                      #10

                      OK, thanks, switching to release stopped the side-by-side error now. Other problems are apparent, but progress is made.

                      I guess I don't want side-by-side install.

                      1 Reply Last reply
                      0
                      • G Offline
                        G Offline
                        giesbert
                        wrote on last edited by
                        #11

                        [quote author="babazaroni" date="1323966444"]I don't want to install Visual C on the target, as I want it top be pristine, just as a customer would start with.[/quote]

                        The VC I meant on your dev system. The manifest is integral part of the dll. It states exactly, which MS C runtime will be tried to load what makes it easy to find bugs :-)

                        [quote author="babazaroni" date="1323968205"]I guess I don't want side-by-side install.[/quote]

                        YOu have side-by-side for MS C runtime, no (simple) way around. You could also just put the MS C runtime in special subdirs of the app, then you don't need to use the vcredist setup, otherwise, the client must call it or it will (evetually) not work. Not all installs of windows will have all redistributables installed.

                        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
                        0
                        • S Offline
                          S Offline
                          Scylla
                          wrote on last edited by
                          #12

                          bq. You could also just put the MS C runtime in special subdirs of the app, then you don’t need to use the vcredist setup,

                          That's the side-by-side install (msvc). The vc_redist.exe ist the other way. And for the msvc2008 was my note above.

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

                            [quote author="Gerolf" date="1323954896"]
                            AFAIK the debug msvcrt* files are not allowed to distribute. (MS license)[/quote]

                            This is true and it is clearly stated in readme file.

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

                            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