jxfang的专栏

温柔互助,共行一程

出现错误:无法解析的外部符号

利用VS2013+Qt5.4.2,出现如下:


carleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QSqlDatabase::QSqlDatabase(void)" (__imp_??0QSqlDatabase@@QEAA@XZ),该符号在函数 "public: __cdecl CCarLeaseSystem::CCarLeaseSystem(class QWidget *,class QFlags<enum Qt::WindowType>)" (??0CCarLeaseSystem@@QEAA@PEAVQWidget@@V?$QFlags@W4WindowType@Qt@@@@@Z) 中被引用

1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QSqlDatabase::~QSqlDatabase(void)" (__imp_??1QSqlDatabase@@QEAA@XZ),该符号在函数 "public: virtual __cdecl CCarLeaseSystem::~CCarLeaseSystem(void)" (??1CCarLeaseSystem@@UEAA@XZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: class QSqlDatabase & __cdecl QSqlDatabase::operator=(class QSqlDatabase const &)" (__imp_??4QSqlDatabase@@QEAAAEAV0@AEBV0@@Z),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: bool __cdecl QSqlDatabase::open(void)" (__imp_?open@QSqlDatabase@@QEAA_NXZ),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: class QSqlError __cdecl QSqlDatabase::lastError(void)const " (__imp_?lastError@QSqlDatabase@@QEBA?AVQSqlError@@XZ),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: void __cdecl QSqlDatabase::setDatabaseName(class QString const &)" (__imp_?setDatabaseName@QSqlDatabase@@QEAAXAEBVQString@@@Z),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: void __cdecl QSqlDatabase::setUserName(class QString const &)" (__imp_?setUserName@QSqlDatabase@@QEAAXAEBVQString@@@Z),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: void __cdecl QSqlDatabase::setPassword(class QString const &)" (__imp_?setPassword@QSqlDatabase@@QEAAXAEBVQString@@@Z),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: void __cdecl QSqlDatabase::setHostName(class QString const &)" (__imp_?setHostName@QSqlDatabase@@QEAAXAEBVQString@@@Z),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: static class QSqlDatabase __cdecl QSqlDatabase::addDatabase(class QString const &,class QString const &)" (__imp_?addDatabase@QSqlDatabase@@SA?AV1@AEBVQString@@0@Z),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QSqlError::~QSqlError(void)" (__imp_??1QSqlError@@QEAA@XZ),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: class QString __cdecl QSqlError::text(void)const " (__imp_?text@QSqlError@@QEBA?AVQString@@XZ),该符号在函数 "private: void __cdecl CCarLeaseSystem::SystemLogin(void)" (?SystemLogin@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QSqlRecord::~QSqlRecord(void)" (__imp_??1QSqlRecord@@QEAA@XZ),该符号在函数 "private: bool __cdecl CCarLeaseSystem::DelUser(void)" (?DelUser@CCarLeaseSystem@@AEAA_NXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: class QVariant __cdecl QSqlRecord::value(int)const " (__imp_?value@QSqlRecord@@QEBA?AVQVariant@@H@Z),该符号在函数 "private: bool __cdecl CCarLeaseSystem::DelUser(void)" (?DelUser@CCarLeaseSystem@@AEAA_NXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QSqlQuery::QSqlQuery(class QString const &,class QSqlDatabase)" (__imp_??0QSqlQuery@@QEAA@AEBVQString@@VQSqlDatabase@@@Z),该符号在函数 "private: void __cdecl CCarLeaseSystem::RefreshUserInfoView(void)" (?RefreshUserInfoView@CCarLeaseSystem@@AEAAXXZ) 中被引用
1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QSqlQuery::~QSqlQuery(void)" (__imp_??1QSqlQuery@@QEAA@XZ),该符号在函数 "private: void __cdecl CCarLeaseSystem::RefreshUserInfoView(void)" (?RefreshUserInfoView@CCarLeaseSystem@@AEAAXXZ) 中被引用

1>ccarleasesystem.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: bool __cdecl QSqlQuery::isActive(void)const " (__imp_?isActive@QSqlQuery@@QEBA_NXZ),该符号在函数 "private: bool __cdecl CCarLeaseSystem::InsertNewUser(void)" (?InsertNewUser@CCarLeaseSystem@@AEAA_NXZ) 中被引用


解决方法:出现这个2001错误,是因为链接失败,然而链接失败,又是因为以下原因: 

1.你在头文件中声明了函数,但是cpp文件缺少了函数实现部分。 
2.忘了将这个.h,.cpp   Add   to   project; 
3.以上两种情况都没有做,没有将它对应的lib文件添加到Setting-> LINK中   

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fjx1173865548/article/details/46518793
文章标签: 经验 vs qt5
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭