Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Deployment win10



  • This project is a pure C++ code, there is no qt code in it.

    First I run my code in release mode. Then at release folder I found the .exe file. Then I search for QT 5.15.2 (MinGW 8.1.0 64-bit) and I write

    windeployqt.exe
    

    I get the following code.

    Usage: windeployqt.exe [options] [files]
    Qt Deploy Tool 5.15.2
    
    The simplest way to use windeployqt is to add the bin directory of your Qt
    installation (e.g. <QT_DIR\bin>) to the PATH variable and then run:
      windeployqt <path-to-app-binary>
    If ICU, ANGLE, etc. are not in the bin directory, they need to be in the PATH
    variable. If your application uses Qt Quick, run:
      windeployqt --qmldir <path-to-app-qml-files> <path-to-app-binary>
    
    Options:
      -?, -h, --help              Displays help on commandline options.
      --help-all                  Displays help including Qt specific options.
      -v, --version               Displays version information.
      --dir <directory>           Use directory instead of binary directory.
      --libdir <path>             Copy libraries to path.
      --plugindir <path>          Copy plugins to path.
      --debug                     Assume debug binaries.
      --release                   Assume release binaries.
      --pdb                       Deploy .pdb files (MSVC).
      --force                     Force updating files.
      --dry-run                   Simulation mode. Behave normally, but do not
                                  copy/update any files.
      --no-patchqt                Do not patch the Qt5Core library.
      --ignore-library-errors     Ignore errors when libraries cannot be found.
      --no-plugins                Skip plugin deployment.
      --no-libraries              Skip library deployment.
      --qmldir <directory>        Scan for QML-imports starting from directory.
      --qmlimport <directory>     Add the given path to the QML module search
                                  locations.
      --no-quick-import           Skip deployment of Qt Quick imports.
      --translations <languages>  A comma-separated list of languages to deploy
                                  (de,fi).
      --no-translations           Skip deployment of translations.
      --no-system-d3d-compiler    Skip deployment of the system D3D compiler.
      --compiler-runtime          Deploy compiler runtime (Desktop only).
      --no-virtualkeyboard        Disable deployment of the Virtual Keyboard.
      --no-compiler-runtime       Do not deploy compiler runtime (Desktop only).
      --webkit2                   Deployment of WebKit2 (web process).
      --no-webkit2                Skip deployment of WebKit2.
      --json                      Print to stdout in JSON format.
      --angle                     Force deployment of ANGLE.
      --no-angle                  Disable deployment of ANGLE.
      --no-opengl-sw              Do not deploy the software rasterizer library.
      --list <option>             Print only the names of the files copied.
                                  Available options:
                                   source:   absolute path of the source files
                                   target:   absolute path of the target files
                                   relative: paths of the target files, relative
                                             to the target directory
                                   mapping:  outputs the source and the relative
                                             target, suitable for use within an
                                             Appx mapping file
      --verbose <level>           Verbose level (0-2).
    
    Qt libraries can be added by passing their name (-xml) or removed by passing
    the name prepended by --no- (--no-xml). Available libraries:
    bluetooth concurrent core declarative designer designercomponents enginio
    gamepad gui qthelp multimedia multimediawidgets multimediaquick network nfc
    opengl positioning printsupport qml qmltooling quick quickparticles quickwidgets
    script scripttools sensors serialport sql svg test webkit webkitwidgets
    websockets widgets winextras xml xmlpatterns webenginecore webengine
    webenginewidgets 3dcore 3drenderer 3dquick 3dquickrenderer 3dinput 3danimation
    3dextras geoservices webchannel texttospeech serialbus webview
    
    Arguments:
      [files]                     Binaries or directory containing the binary.
    
    C:\Qt\5.15.2\mingw81_64>
    

    Then I go to the release file folder. Then I run the following command:

    windeployqt.exe eval.exe
    

    I get the following message:

    C:\Qt files\.....\release>windeployqt.exe eval.exe
    C:\Qt files\....\release\eval.exe 64 bit, release executable
    C:\Qt files\...\release\eval.exe does not seem to be a Qt executable.
    

    I have no idea what could be the problem. I would really appreciate if you could help me solve my problem.



  • @bence as mentioned in the question, the application you are trying to deploy is purely c++ without using qt libraries.
    hence windeployqt giving correct message

    eval.exe does not seem to be a Qt executable
    

    There is no qt run time libraries to link against.



  • Is there any other way to run the pure c++ code?


  • Moderators

    windeployqt is for deploying Qt applications, as its name suggests. So, it can't be used to deploy a non-Qt app.

    @bence said in Deployment win10:

    Is there any other way to run the pure c++ code?

    You don't need any special tools for that. Just copy and paste the required MinGW DLLs into the same folder as your app.

    If you try to run your app but a required DLL is missing, you will get a pop-up dialog that tells you which DLL it needs.


Log in to reply