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. Deploying QT GUI application to Windows Embedded 7 device
QtWS25 Last Chance

Deploying QT GUI application to Windows Embedded 7 device

Scheduled Pinned Locked Moved Installation and Deployment
windows embeddedeployment
9 Posts 4 Posters 9.9k 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.
  • A Offline
    A Offline
    AgentBK
    wrote on last edited by
    #1

    Hi

    I am having problems deploying a QT application to a device running a Windows Embedded 7 OS. I have developed the application on personal PC, I built it in release mode, copied all the dll files into the same folder, so it runs without a problem. But when I copy it to the WE7 device and try to run it, I can see the loading indicator next to the mouse pointer for a few seconds and after that nothing happens at all.

    The application is a simple GUI application. As the GUI starts, a TCP client starts in the background and displays a message box when it is able to connect to the host.

    I couldn't find any special instructions regarding building and deploying for WE7.

    Any ideas what I could go wrong?

    Thanks

    1 Reply Last reply
    0
    • T Offline
      T Offline
      tlabs
      wrote on last edited by
      #2

      Hello,

      have you copied also all runtime libraries? For me it is also mvscr90.dll and QWINDOWS.dll.

      Greetings Torsten

      1 Reply Last reply
      0
      • A Offline
        A Offline
        AgentBK
        wrote on last edited by
        #3

        What do you mean by runtime libraries? Where can I find them? I have copied everything that Dependency Walker was complaining about (including Qt5Core).

        By the way, forgot to mention, I am building with MinGW 32bit. WE7 is also 32 bit.

        I have also run the dependency walker on the WE7 device to see what could be the issue. There are some warnings but no errors. The report can be found here: http://www.filedropper.com/gui_1

        Thank you

        1 Reply Last reply
        0
        • T Offline
          T Offline
          tlabs
          wrote on last edited by
          #4

          I can suggest you to build a windows 7/8 application with mingw. After that use the tool windeployqt.exe from <qtdir>/bin/windeployqt.exe to create a "release bundle" an check there the dlls which are missing in your wec7 build.

          1 Reply Last reply
          0
          • A Offline
            A Offline
            AgentBK
            wrote on last edited by AgentBK
            #5

            Hi

            I did what you said.
            When running windeployqt.exe everything is fine except for a warning "Warning: Cannot find Visual Studio installation directory, VCINSTALLDIR is not set." which is weird, because I have the VS installed.
            So, when I run the GUI on the WE7 device I get an error "MSVCR120.dll is missing" which I assume is due to the previously mentioned warning. Therefore I manually copy the dll from the VS install directory (Microsoft Visual Studio 12.0\VC\redist\x86\Microsoft.VC120.CRT)
            Running the GUI after this throws an error "The procedure entry point _ZN10QArrayData10deallocateEPS_jj could not be loaded in the dynamic link library Qt5Core.dll." Any further suggestions?

            Thank you

            1 Reply Last reply
            0
            • hskoglundH Offline
              hskoglundH Offline
              hskoglund
              wrote on last edited by
              #6

              Hi, you're almost there, the _ZN10QArrayData10deallocateEPS_jj eror is well known, the Qt DLLs were copied from the wrong directory, see for example Qt forum answer

              1 Reply Last reply
              0
              • A Offline
                A Offline
                AgentBK
                wrote on last edited by
                #7

                Hi,

                thanks for the support.
                Still not quite there yet.
                You are right, I was using the windeployqt.exe from the wrong directory. Therefore I switched to the same tool but inside the MinGW directory. Running the tool I got an error saying: "unable to find the platform plugin". Found out this is a bug and can be solved adding the --release-with-debug-info flag (can I avoid this?)
                However, the procedure entry point error was still there. I manually copied all the dependencies and whatever it was complaining about from the MinGW directory. This means Qt5Core, Qt4GUI, Qt5Widgets, Qt5Network and libwinpthread-1.dll, libstdc++-6.dll, libgcc_s_dw2-1.dll. Also, it was still asking for the msvcr120.dll, msvcp120.dll and vccorlib120.dll, so I copied these too (which is weird to me because as far as I know MinGW has nothing to do with VS, right?).
                Now I am back at the beginning. When I run the exe I can see the loading indicator next to the mouse pointer for a few seconds and after that nothing happens at all. Dependency walker only complains about IESHIMS.DLL, SHLWAPI.DLL, IEFRAME.DLL, and a bunch of other things which apparently are all false alarms.

                So again, I am stuck. Any help and suggestions are highly appreciated. Thanks in advance.

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

                  Hi @AgentBK,

                  Let's step back and start from scratch, without relying on tools like windeployqt and Dependency Walker.

                  First, delete all DLLs from your deployment folder. Then, follow this article carefully: http://wiki.qt.io/Deploy_an_Application_on_Windows -- see the section called "Initial deployment (Quick and dirty)", and do not skip any steps.

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

                  1 Reply Last reply
                  2
                  • A Offline
                    A Offline
                    AgentBK
                    wrote on last edited by AgentBK
                    #9

                    Hi,

                    Thanks a lot. This finally worked. I have somehow missed this article. Thanks again.

                    PS: Since I am kind of new here, is there a way to mark an answer as a "solution" or something like that?

                    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