Qt в новом проекте msvc не может открыть QMainWindow

При создании нового проекта Qt msvs и последующего его запуска выдаёт ошибку:

:-1: ошибка: dependent '............\Qt\6.7.2\msvc2019_64\include\QtWidgets\QMainWindow' does not exist.

Проверил, файл имеется. В чём проблема, не понимаю.


Ответы (2 шт):

Автор решения: Aleksander Konovalov

Имею ту же проблему. Конечного ответа нет, но получилось немного исследовать проблему. Что сделал?

  1. Создал чистый Qt проект с одним окном в папке C:\my\project_name. Каталог сборки: C:\my\project_name\build\debug
  2. Попробовал собрать. Получил такую же ошибку:

C:\Qt\Tools\QtCreator\bin\jom\jom.exe -f Makefile.Debug Error: dependent '..\..\..\..\..\..\Qt\6.7.2\msvc2019_64\include\QtWidgets\QMainWindow' does not exist. jom: C:\my\Repeater_2\build\debug\Makefile [debug] Error 2 04:09:45: Процесс «C:\Qt\Tools\QtCreator\bin\jom\jom.exe» завершился с кодом 2.

Теперь, если глянуть файл C:\my\project_name\build\debug\Makefile.Debug, то там можно найти такие строки:

compiler_moc_header_clean: -$(DEL_FILE) debug\moc_MainWindow.cpp debug\moc_MainWindow.cpp: ..\..\MainWindow.hpp
..\..\..\..\..\..\Qt\6.7.2\msvc2019_64\include\QtWidgets\QMainWindow
..\..\..\..\..\..\Qt\6.7.2\msvc2019_64\include\QtWidgets\qmainwindow.h
..\..\..\..\..\..\Qt\6.7.2\msvc2019_64\include\QtWidgets\qtwidgetsglobal.h \

То есть, если предположить, что рабочий каталог C:\my\project_name\build\debug, то в Makefile путь предполагается с большей вложенностью, нежели она есть на самом деле. Этот файл генерирует qmake. Видимо какая-то проблема в нём. Причём в других местах в файле путь правильный. Что-либо сделать с этим у меня не получилось. По сути, только такие решения:

  1. Отключить теневую сборку
  2. Изменить путь сборки на C:\my\project_name (т.е. на корневую папку проекта) или на другую папку, уровень вложенности которой такой же, как и у корневой. Например: C:\my\project_name_build (по сути, как раньше оно работало).
  3. Не использовать MSVC (проблема такая только с ним). Причём, Makefile не отличается особо, но видимо mingw32-make умеет лишнее сокращать, в отличие от jom.
→ Ссылка
Автор решения: Willam

Проблема с билдом msvc2019. Чтобы решить эту проблему установи себе MicrosoftVisualStudio на рабочий пк. Вместе с ним устанавливается этот билд по умолчанию.

→ Ссылка