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

Qt 64 bits application

Scheduled Pinned Locked Moved Solved Installation and Deployment
24 Posts 4 Posters 2.0k Views 2 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.
  • SGaistS Offline
    SGaistS Offline
    SGaist
    Lifetime Qt Champion
    wrote on last edited by
    #9

    Just one point that might sound silly: the fact that the folder is named win64 should just be taken as a hint. I would double check that its content really is 64 bit.

    Interested in AI ? www.idiap.ch
    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

    JonBJ 1 Reply Last reply
    1
    • SGaistS SGaist

      Just one point that might sound silly: the fact that the folder is named win64 should just be taken as a hint. I would double check that its content really is 64 bit.

      JonBJ Offline
      JonBJ Offline
      JonB
      wrote on last edited by
      #10

      @SGaist Wow, if that's the case..! :)

      1 Reply Last reply
      0
      • P Offline
        P Offline
        Pierre-Emmanuel
        wrote on last edited by Pierre-Emmanuel
        #11

        Hi guys,

        I tried many things yesterday !

        First, in the libraries folder there is only the needed .lib files.

        Then, I added one after the other the missing dlls in the folder where the executable is generated until I get the error code 0xc000007b:
        48aee9a4-24ec-4bb7-9be0-50541589764c-image.png

        The for each, I check if they are 32-bits or 64-bits dlls using a git bash:
        c39744d7-1b69-46d8-a4aa-c30052718628-image.png

        I don't really know how to interpret the PE32+.. Maybe it is 32-bits dll and that would explain why I can't load ?

        I compared with the dlls I was using before migrating to a 64-bits toolchain:
        b6a1f716-04b7-4bdd-8848-4fd6b14a1bb4-image.png

        Does it means something to you ?

        I also modified my PATH environment variable like this:
        bad9b4ff-7614-47be-935e-84ca873e6310-image.png

        Have a nice day,
        Pierre-Emmanuel

        1 Reply Last reply
        0
        • JonBJ Offline
          JonBJ Offline
          JonB
          wrote on last edited by
          #12

          PE32+ looks right for 64-bit.
          What exact error message do you get at runtime now? Do you get any clue as to why/where/on what it is happening, like mentioning a DLL it cannot load? If you run it from a debugger do you maybe get any better information?
          You may have to download and use something like https://github.com/lucasg/Dependencies to examine your .exe/each of the .dlls to discover if there is any 32-bit somewhere. It might be on some DLL indirectly required by another DLL.

          1 Reply Last reply
          0
          • P Offline
            P Offline
            Pierre-Emmanuel
            wrote on last edited by Pierre-Emmanuel
            #13

            Hi JonB,

            The error popup I got is the following:

            image.png

            It does not help at all..

            Good idea to try to execute it with the debugger ! This is what I got:
            image.png

            It's very strange.. It looks like Qt (or Qt Creator) is looking for a file on a different branch (which completely out of the project main folder) of the same project.. But in the .pro file, it is referring only to files in the project.

            It would be easier if I share the content of the .pro file. I should have done earlier.

            04cd58b5-bdf6-447b-b7fd-d4a3d02729ba-image.png
            c8693d10-9bdb-4183-8437-5ee32d1d95c0-image.png
            062d5366-2bff-46b1-bf75-a22fd010f6ec-image.png
            4195b43f-206c-45e5-923c-1891e936042a-image.png

            Obviously, I am cleaning and rebuilding each time I am trying something new.

            I also has a look at the .pro.user file but there is no reference to "CAN Converter model clone/branches/CAN-4_lbf_asc_extension_support"

            Have a nice day,
            Pierre-Emmanuel

            JonBJ 1 Reply Last reply
            0
            • P Pierre-Emmanuel

              Hi JonB,

              The error popup I got is the following:

              image.png

              It does not help at all..

              Good idea to try to execute it with the debugger ! This is what I got:
              image.png

              It's very strange.. It looks like Qt (or Qt Creator) is looking for a file on a different branch (which completely out of the project main folder) of the same project.. But in the .pro file, it is referring only to files in the project.

              It would be easier if I share the content of the .pro file. I should have done earlier.

              04cd58b5-bdf6-447b-b7fd-d4a3d02729ba-image.png
              c8693d10-9bdb-4183-8437-5ee32d1d95c0-image.png
              062d5366-2bff-46b1-bf75-a22fd010f6ec-image.png
              4195b43f-206c-45e5-923c-1891e936042a-image.png

              Obviously, I am cleaning and rebuilding each time I am trying something new.

              I also has a look at the .pro.user file but there is no reference to "CAN Converter model clone/branches/CAN-4_lbf_asc_extension_support"

              Have a nice day,
              Pierre-Emmanuel

              JonBJ Offline
              JonBJ Offline
              JonB
              wrote on last edited by JonB
              #14

              @Pierre-Emmanuel
              Not sure what this tells us. I think the second error message screenshot is not from the "failure to load" some DLL itself but rather the debugger is trying to fetch the source file for where some error occurred and cannot locate the .cpp source file it wants somewhere inside whatever CAN stuff is all about.

              I am not a Windows expert so not sure how you proceed. I would probably have a go with the https://github.com/lucasg/Dependencies tool I mentioned to examine the EXE/DLL files I have for their dependencies to see if I could spot something wrong/16-bit. It's probably a good tool to get compiled and working for Windows development in general, so worth spending a few minutes on.

              P.S.
              You could Google matlab 0xc000007b. Something like https://stackoverflow.com/questions/6458271/matlab-engine-windows-7-problem says

              This error is likely due to incorrect installation or multiple installations of Matlab on your machine. Check your Windows %PATH% environment variable [...]

              Since you used to work with 32-bit matlab perhaps some vestige of this is left around and on your PATH. Check what is in the R2022b\runtime\win64 directory, but also what is in R2022b\bin. Do you need that, or could you remove that? You might try removing both of those from your PATH and resort to copying DLLs one by one from directories to the directory of your executable while you figure out what what exactly it needs to run.

              1 Reply Last reply
              0
              • P Offline
                P Offline
                Pierre-Emmanuel
                wrote on last edited by Pierre-Emmanuel
                #15

                I used the dependencies program to check my application,

                The first time I got missing dll from Qt6 so I updated the system PATH to have C:\Qt\6.8.1\mingw_64\bin. It fixed all missing dlls related to Qt but still some of them are missing, which seems to be related to Windows:

                ext-ms-win-oobe-query-11-1-0.dll
                ext-ms-win32-subsystem-query-11-1-0.dll
                HvsiFileTrust.dll

                There is some other missing, which seems to be related to matlab:

                libmwfl.dll
                libmwi18n.dll
                libut.dll
                libmwcppmicroservices.dll
                mwboost_log-vc142-mt-x64-1_75.dll
                CppMicroServices3.dll
                hdf5-1.8.dll
                icuuc69.dll

                I will add them manually.

                I will also uninstall old matlab version I am not using anymore and see if it change something.

                Have a nice day,
                Pierre-Emmanuel

                JonBJ 1 Reply Last reply
                0
                • P Pierre-Emmanuel

                  I used the dependencies program to check my application,

                  The first time I got missing dll from Qt6 so I updated the system PATH to have C:\Qt\6.8.1\mingw_64\bin. It fixed all missing dlls related to Qt but still some of them are missing, which seems to be related to Windows:

                  ext-ms-win-oobe-query-11-1-0.dll
                  ext-ms-win32-subsystem-query-11-1-0.dll
                  HvsiFileTrust.dll

                  There is some other missing, which seems to be related to matlab:

                  libmwfl.dll
                  libmwi18n.dll
                  libut.dll
                  libmwcppmicroservices.dll
                  mwboost_log-vc142-mt-x64-1_75.dll
                  CppMicroServices3.dll
                  hdf5-1.8.dll
                  icuuc69.dll

                  I will add them manually.

                  I will also uninstall old matlab version I am not using anymore and see if it change something.

                  Have a nice day,
                  Pierre-Emmanuel

                  JonBJ Offline
                  JonBJ Offline
                  JonB
                  wrote on last edited by JonB
                  #16

                  @Pierre-Emmanuel
                  I will just say you may be disappearing down a rabbit hole. I think some of these might be "false negatives" reported by the tool, e.g. see https://www.reddit.com/r/AskProgramming/comments/xxzpfk/reputable_sources_for_missing_dlls/ has a couple of yours, I don't know.

                  Maybe it's time for you to find a matlab forum and ask for help/clues/pointers there for whatever your issue is?

                  1 Reply Last reply
                  0
                  • P Offline
                    P Offline
                    Pierre-Emmanuel
                    wrote on last edited by
                    #17

                    I think it is yes,

                    Thank you JonB and SGaist for helping me.

                    I will keep posting here if I have more details or more founding !

                    1 Reply Last reply
                    1
                    • SGaistS Offline
                      SGaistS Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on last edited by
                      #18

                      What I would do is to empty the PATH environnement variable in Qt Creator and add yourself what is required for your application to work so it only contains entries pertinent to your application just to be sure there's no other DLLs found beside the ones your really need.

                      Interested in AI ? www.idiap.ch
                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                      1 Reply Last reply
                      1
                      • P Offline
                        P Offline
                        Pierre-Emmanuel
                        wrote on last edited by
                        #19

                        Hi SGaist,

                        Sorry I come back to this topic quite late.
                        I asked the question HERE on the matlab forum.

                        I have tried clearing the PATH environment variable from Qt Creator by checking "Clear System environment" checkbox:
                        921a43d2-333e-4139-9414-a15cc8271a18-image.png

                        But then I got new issues to build the app like:
                        1e67a33d-b2c1-4c89-b383-f26c17b8e439-image.png

                        I guess I need to keep some environment variables ?

                        Thank you for you help,
                        Have a nice day,

                        Pierre-Emmanuel

                        jsulmJ 1 Reply Last reply
                        0
                        • P Pierre-Emmanuel

                          Hi SGaist,

                          Sorry I come back to this topic quite late.
                          I asked the question HERE on the matlab forum.

                          I have tried clearing the PATH environment variable from Qt Creator by checking "Clear System environment" checkbox:
                          921a43d2-333e-4139-9414-a15cc8271a18-image.png

                          But then I got new issues to build the app like:
                          1e67a33d-b2c1-4c89-b383-f26c17b8e439-image.png

                          I guess I need to keep some environment variables ?

                          Thank you for you help,
                          Have a nice day,

                          Pierre-Emmanuel

                          jsulmJ Offline
                          jsulmJ Offline
                          jsulm
                          Lifetime Qt Champion
                          wrote on last edited by
                          #20

                          @Pierre-Emmanuel said in Qt 64 bits application:

                          by checking "Clear System environment" checkbox

                          Why? Only change PATH, nothing else.

                          https://forum.qt.io/topic/113070/qt-code-of-conduct

                          1 Reply Last reply
                          0
                          • P Offline
                            P Offline
                            Pierre-Emmanuel
                            wrote on last edited by
                            #21

                            I have found it !!!!!

                            Thank you @jsulm for this info, it solved the new problems I was facing !

                            The problem was coming from the fact that Qt Creator does not search recursively in the folders.

                            In the PATH environment variable, I had the following path <matlab_folder>\R2022b\bin registered. But the missing dlls were in <matlab_folder>\R2022b\bin\win64 ...

                            Once I updated the PATH in Qt Creator, I could run the application as before !!

                            Thank you very much guys, you all have been of great help !

                            On my side the problem is solved, I will also update the matlab forum.

                            Have a very good week,
                            Pierre-Emmanuel

                            SGaistS 1 Reply Last reply
                            0
                            • P Pierre-Emmanuel

                              I have found it !!!!!

                              Thank you @jsulm for this info, it solved the new problems I was facing !

                              The problem was coming from the fact that Qt Creator does not search recursively in the folders.

                              In the PATH environment variable, I had the following path <matlab_folder>\R2022b\bin registered. But the missing dlls were in <matlab_folder>\R2022b\bin\win64 ...

                              Once I updated the PATH in Qt Creator, I could run the application as before !!

                              Thank you very much guys, you all have been of great help !

                              On my side the problem is solved, I will also update the matlab forum.

                              Have a very good week,
                              Pierre-Emmanuel

                              SGaistS Offline
                              SGaistS Offline
                              SGaist
                              Lifetime Qt Champion
                              wrote on last edited by
                              #22

                              @Pierre-Emmanuel Glad you found out but it has nothing to do with Qt Creator, that's how the PATH environment variable works on Windows.

                              Interested in AI ? www.idiap.ch
                              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                              1 Reply Last reply
                              1
                              • P Offline
                                P Offline
                                Pierre-Emmanuel
                                wrote on last edited by
                                #23

                                Maybe or maybe not ?

                                I mean, I had something working with Qt 5.15 (I don't remember Qt Creator version at that moment), I did not change my PATH environment variable, and when I upgraded to Qt 6.8.1, it was not working anymore.

                                I thought Qt would search recursively in the folders registered in the PATH and I was wrong.

                                Thank you for your help,

                                Have a nice day,
                                Pierre-Emmanuel

                                JonBJ 1 Reply Last reply
                                0
                                • P Pierre-Emmanuel has marked this topic as solved on
                                • P Pierre-Emmanuel

                                  Maybe or maybe not ?

                                  I mean, I had something working with Qt 5.15 (I don't remember Qt Creator version at that moment), I did not change my PATH environment variable, and when I upgraded to Qt 6.8.1, it was not working anymore.

                                  I thought Qt would search recursively in the folders registered in the PATH and I was wrong.

                                  Thank you for your help,

                                  Have a nice day,
                                  Pierre-Emmanuel

                                  JonBJ Offline
                                  JonBJ Offline
                                  JonB
                                  wrote on last edited by JonB
                                  #24

                                  @Pierre-Emmanuel said in Qt 64 bits application:

                                  Maybe or maybe not ?

                                  Not "maybe". Creator (nor Qt itself) has nothing to do with runtime searching for libraries/DLLs for an executable. That is done by the OS/Windows, and that requires them to be found on either PATH or in the same directory as the executable. This would also be the case if you ran your program quite outside of Creator. No OS searches PATH recursively (would be too slow and too dangerous). So something has changed between your Qt5/6 or its environment.

                                  1 Reply Last reply
                                  2

                                  • Login

                                  • Login or register to search.
                                  • First post
                                    Last post
                                  0
                                  • Categories
                                  • Recent
                                  • Tags
                                  • Popular
                                  • Users
                                  • Groups
                                  • Search
                                  • Get Qt Extensions
                                  • Unsolved