vscode-qt-tools icon indicating copy to clipboard operation
vscode-qt-tools copied to clipboard

[feature] Provide `Qt: Deploy executable` in Command Palette.

Open hwhsu1231 opened this issue 2 years ago • 1 comments

Problem to solve

For example, after building an executable depended upon Qt on Windows, here is a problem I usually face.

If I don't put the bin directory of Qt Kits into PATH environment variable, the system will pop up the error of "lack-of-dll". The solution of it is to copy those dll files that it need into the directory of executables generaeted by us. But it is quite complex for Qt, so we can use windeployqt tool to do so.

Proposal

I suggest that qttools provide a command called Qt: Deploy executable in Command Palette.

And set the configuration of deployment arguments in settings.json.

Further details

The configuration of deployment arguments in settings.json could be like:

{
  "qttools.deployqtArgs": {
    "executablePath": "${command:cmake.launchTargetPath}"
    "windeployqt": [
      "--verbose 1"
      "--no-translation",
      "--no-opengl-sw"
    ],
    "macdeployqt": [],
    "androiddeployqt": []
  }
}

hwhsu1231 avatar Mar 19 '22 13:03 hwhsu1231

@hwhsu1231 Do you would use it for deploy the application or for the development process? For dev scenario it would be better to inject the PATH variable automatically into launch.json. There is a dedicated variable name environment for that. That way it would be automatically done for you without any copy of files.

tonka3000 avatar Mar 21 '22 20:03 tonka3000