Qt в новом проекте msvc не может открыть QMainWindow
При создании нового проекта Qt msvs и последующего его запуска выдаёт ошибку:
:-1: ошибка: dependent '............\Qt\6.7.2\msvc2019_64\include\QtWidgets\QMainWindow' does not exist.
Проверил, файл имеется. В чём проблема, не понимаю.
Ответы (2 шт):
Имею ту же проблему. Конечного ответа нет, но получилось немного исследовать проблему. Что сделал?
- Создал чистый Qt проект с одним окном в папке C:\my\project_name. Каталог сборки: C:\my\project_name\build\debug
- Попробовал собрать. Получил такую же ошибку:
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. Видимо какая-то проблема в нём. Причём в других местах в файле путь правильный. Что-либо сделать с этим у меня не получилось. По сути, только такие решения:
- Отключить теневую сборку
- Изменить путь сборки на C:\my\project_name (т.е. на корневую папку проекта) или на другую папку, уровень вложенности которой такой же, как и у корневой. Например: C:\my\project_name_build (по сути, как раньше оно работало).
- Не использовать MSVC (проблема такая только с ним). Причём, Makefile не отличается особо, но видимо mingw32-make умеет лишнее сокращать, в отличие от jom.
Проблема с билдом msvc2019. Чтобы решить эту проблему установи себе MicrosoftVisualStudio на рабочий пк. Вместе с ним устанавливается этот билд по умолчанию.