Windeployqt failes



  • Hello

    I'm trying to use windeployqt.exe. When I run it I get the following errors:

    C:\Qt\5.9.1\msvc2015_64\bin\windeployqt.exe C:/Users/dandn/Documents/Qt/build-DeployTest-Desktop_Qt_5_9_1_MSVC2015_64bit-Release/release/DeployTest.exe
    Warning: Unable to read C:\Users\dandn\AppData\Local\Continuum\Anaconda3\Library\bin\mkspecs\qconfig.pri: The path was not found.
    Unable to find dependent libraries of C:\Users\dandn\AppData\Local\Continuum\Anaconda3\Library\bin\bin\Qt5Widgets.dll :Cannot open 'C:/Users/dandn/AppData/Local/Continuum/Anaconda3/Library/bin/bin/Qt5Widgets.dll': The path was not found.

    It is correct that this path does not exist. However I have no idea why it even should look in my python anaconda install folder, instead of the Qt folder with binaries. When i then tried to create the missing folder and copy all dll's to that fodler the error disappered, however then i got an error that it could not find the platform plugin, so I can't get windeployqt running no matter what I try.

    Anybody can help me get it working?


  • Moderators

    @AndersDK Did you add your Anaconda installation to PATH?



  • Yes on install I did that. Maybe I shouldn't have done that. I've tried to remove them from the system path, but it seems like it is hardcoded in some place in windeployqt.exe I can't find.


  • Moderators

    @AndersDK said in windeployqt failes:

    but it seems like it is hardcoded in some place in windeployqt.exe

    How could C:\Users\dandn\AppData\Local\Continuum\Anaconda3\Library\bin\bin\ be hardcoded in windeployqt.exe ?



  • No idea. I guess I was a bit unclear. It is not hardcoded into the exe. But it does not depend on the system path, it must be some where else i guess. When i go to the folder and run windeploy directly in the Qt folder it seems to work, so thats great.

    It don't get all dlls however. I use docxfactory, and it does not find these dlls. Are there anyway to tell Qt that it should include these as well?

    Of cause it does not take all the dll from system32 that is needed, however, how do I make sure that the persons getting the program have all the needed dlls?


  • Moderators

    @AndersDK It depends on what DLLs those are. Probably those are from Microsoft C++ runtime?



  • @jsulm Yeah probably. From dependency walker i can see: MSVCP140, KERNEL32, VCRUNTIME140, SHELL32. These also has a lot of dendencies. I know all have KERNEL32, but in general how can I know which they will have? And since the dll they have also depends on dlls which of these they have (I guess since they have them, they must have them?)


  • Moderators

    @AndersDK Not sure how to handle this (I don't do much on Windows). The correct runtime package from Microsoft must be installed on users machine. I do not know whether Microsoft allows to distribute this runtime. If not your installer could maybe download it from Microsoft if it is not installed and install then.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.