Я использую CMake, но думаю, что хитрость заключается в том, чтобы настроить компилятор cl в PATH, чтобы qmake смог его найти.
В примерах сценариев appveyor основным сценарием сборки является '. \qtmodules-Трэвис \ CI \ победа \ build.bat».Этот сценарий проверит / использует матричную переменную AppVeyor для платформы (строка 7+), а затем сценарий определит VC_DIR и т. Д.
И в конце вызовет сценарий, указанный вами как build-msvc.bat, гдевызывается:
call %VC_DIR% %VC_VARSALL% || exit /B 1
QtCreator выполнит настройку за вас (вы используете наборы ...)
Когда вы строите в чистой командной строке, вы должны сделать 'vcvarsXXX.batназывайте себя перед вызовом qmake.
По моему мнению, AppVeyor не запускает этот вызов для вас, потому что разработчик может пожелать другой env сборки.настройка (например, x86, x64, arm и т. д.).Это твой выбор.На самом деле это также подсказка, когда вы запускаете «Командную строку Qt» на вашем ПК из меню «Пуск» (она вызывает «C: \ Qt \ 5.11.0 \ msvc2017_64 \ bit \ qtenv2.bat» сценарий установки оболочки)