VS2019导入Qt Designer项目构建出现链接等错误该如何解决
问题修复方案
1. 核心链接错误(LNK2019/LNK1120)修复
你遇到的链接错误根本原因是main.cpp中缺少C++程序必须的入口函数main(),Qt的入口封装WinMain会自动调用你实现的main函数,未定义该函数就会触发链接失败。
你需要把main.cpp补全为完整的可执行程序结构,示例如下:
#include <QtUiTools> #include <QApplication> #include <QWidget> #include "ui_xinterface.h" static QWidget* loadUiFile(QWidget* parent) { QFile file(":/forms/xinterface.ui"); file.open(QIODevice::ReadOnly); QUiLoader loader; return loader.load(&file, parent); } int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget *mainWindow = loadUiFile(nullptr); mainWindow->show(); return a.exec(); }
如果补全后仍然报相同链接错误,检查项目属性配置:
- 右键项目 -> 属性 -> 链接器 -> 系统 -> 子系统,确认选择
控制台 (/SUBSYSTEM:CONSOLE)即可。
2. E开头的active错误处理
所有E2422、E0028类错误都是VS2019的IntelliSense语法检测的假报错,不是真实的编译错误,原因是VS2019对Qt 6使用的高版本C标准(C17/20)的语法支持不完善,不会影响程序的编译和运行,可以直接忽略。如果想要消除这类提示,升级到VS2022即可。
额外注意事项
你当前代码中使用:/forms/xinterface.ui路径读取UI文件,需要确保已经创建Qt资源文件(.qrc),并将xinterface.ui文件添加到资源中,前缀设置为forms,否则程序运行时会加载UI失败。
内容的提问来源于stack exchange,提问作者Matt
相关产品推荐
相关产品推荐

