【发布时间】:2025-12-29 13:35:11
【问题描述】:
我正在尝试将我的 Qt4 Vs2005 项目移植到 Qt5 Vs2012。
编辑包含路径并将链接器依赖项从 QtCored4.lib;QtGuid4.lib;QtNetworkd4.lib; 更改为 Qt5Cored.lib;Qt5Guid.lib;Qt5Networkd.lib; 后,我仍然收到数百个链接错误:
1>main.obj : 错误 LNK2019: Verweis auf nicht aufgelöstes externes 符号 ""__declspec(dllimport) public: void __thiscall QWidget::showMaximized(void)" (__imp_?showMaximized@QWidget@@QAEXXZ)" 在功能“_main”中。 1>main.obj:错误 LNK2019:Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall QApplication::QApplication(int &,char * *,int)" (__imp_??0QApplication@@QAE@AAHPAPADH@Z)”在函数“_main”中。 1>main.obj:错误 LNK2019:Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual __thiscall QApplication::~QApplication(void)" (__imp_??1QApplication@@UAE@XZ)" 在 功能“_main”。 1>main.obj:错误 LNK2019:Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: static int __cdecl QApplication::exec(void)" (__imp_?exec@QApplication@@SAHXZ)" 在函数 "_main" 中。 1>object.obj:错误 LNK2019:Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall QWidget::QWidget(类 QWidget *,类 QFlags)" (__imp_??0QWidget@@QAE@PAV0@V?$QFlags@W4WindowType@Qt@@@@@Z)" 在 Funktion ""public: __thiscall Object::Object(class QWidget *)" (??0Object@@QAE@PAVQWidget@@@Z)"。1>ppi.obj:错误 LNK2001:Nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall QWidget::QWidget(类 QWidget *,类 QFlags)" (__imp_??0QWidget@@QAE@PAV0@V?$QFlags@W4WindowType@Qt@@@@@Z)"。
这里被告知从项目窗口运行qmake,但我找不到qmake 的任何按钮?
谢谢!
【问题讨论】:
-
你需要添加Qt5Widgetsd.lib,你做了吗?
-
谢谢你这解决了问题!现在唯一的问题是,qt 将问号打印到黑色方块中,而不是打印度数符号°,但我想我稍后会解决这个问题。有没有更简单的方法来移植 Qt 项目,或者这是我做的正确方法?
标签: visual-studio-2012 linker qt4 qt5 porting