Не удалось автоматизировать windeployqt, не найдено

#qt #visual-c #qmake

Вопрос:

Я пытаюсь сделать проект Qt 5.15 совместимым с msvc, проект успешно компилируется с Mingw и qmake.

Одним из последних шагов является вызов пакетного файла, копирование необходимых файлов среды выполнения, вызов windeployqt и компиляция установщика и создание исходного архива git. Это прекрасно работает для mingw.

 deployscript.files = $files($PWD/deploy.bat)
deployscript.path = $OUT_PWD
CONFIG(release, debug|release) {
    COPIES  = deployscript
    QMAKE_POST_LINK  = $OUT_PWD/deploy.bat ${VERSION} $PWD
}
 

Однако при компиляции с msvc я получаю:
'windeployqt' is not recognized as an internal or external command, operable program or batch file.

Потом я проверил его в Qt 5.15.2 (MSVC 2019 32-bit) оболочке, но там windeployqt все работает нормально.

Почему он не запускается из моего файла bat?
Должен ли я сам добавлять среду, я надеюсь, что нет.

Пакетный файл в нем не особенный. Несколько рентгеновских снимков и:

 mkdir deploy
copy lib.dll deploy
...
cd deploy
echo %PATH%
windeployqt project.exe
cd ../
 

Одна вещь, которую я заметил в своем тесте echo %PATH%, заключается в том, что у него вообще нет каталога Qt, хотя Qt 5.15.2 (MSVC 2019 32-bit) он есть.
Что я делаю не так?


Использование переменной %QTDIR% явно, по-видимому, работает. %QTDIR%binwindeployqt.exe configurator.exe