Похоже, вам не хватает переключателя WIN32
на вашем add_executable()
.
При Windows графические приложения (но не консольные приложения) заменяют точку входа (первая вызываемая функция) вашего приложения (обычно ваша main()
функция) с другой функцией (WinMain()
), которая содержит установочный код и сама вызовет ваш main()
.
Подробнее о переключателе WIN32
в cmake документация .
Редактировать: Если вам интересно, почему точка входа, которая не была найдена, называется qResourceFeatureZlib()
вместо WinMain()
: система ресурсов Qt позволяет вам (описывая это очень в упрощенном виде), чтобы добавить zip-файл, содержащий любые файлы, которые вы хотите, в ваш исполняемый файл и использовать их, как если бы они находились где-то в папке с вашим исполняемым файлом. Чтобы сделать это прозрачно, Qt перехватывает точку входа вашей программы, извлекает zip-файл и затем вызывает main()
или WinMain()
.