当前位置: 代码迷 >> QT开发 >> VS2008建空项目,然后添加之前手工编写的cpp及h文件,其中包含qt类,一直链接异常
  详细解决方案

VS2008建空项目,然后添加之前手工编写的cpp及h文件,其中包含qt类,一直链接异常

热度:76   发布时间:2016-04-25 03:20:11.0
VS2008建空项目,然后添加之前手工编写的cpp及h文件,其中包含qt类,一直链接错误。
是通过VS2008建的VC++空项目,然后将之前手工编写的cpp及h文件添加进来的,编译出现了很多链接错误,开始很多,做了以下操作少了些,但是依然有链接错误:
1、检查了环境变量包含了qt的lib路径,工具-选项-项目和解决方案-VC++目录中的include和lib路径,都是正确的。
2、项目属性-配置属性-链接器-输入-附加依赖项,添加了QtCore4.lib QtCored4.lib QtGui4.lib QtGuid4.lib等项。
3、头文件包含了Q_OBJECT,对头文件使用了moc编译生成了对应的moc_开始的cpp文件。
各位大神帮忙看看,可能是什么原因呢?感谢!
下面是选的几个错误信息:
错误 1 error LNK2019: 无法解析的外部符号 "public: virtual __thiscall QFtp::~QFtp(void)" (??1QFtp@@UAE@XZ),该符号在函数 "public: virtual __thiscall FtpGet::~FtpGet(void)" (??1FtpGet@@UAE@XZ) 中被引用 main.obj ftpclient
错误 2 error LNK2001: 无法解析的外部符号 "public: virtual __thiscall QFtp::~QFtp(void)" (??1QFtp@@UAE@XZ) ftpget.obj ftpclient
错误 3 error LNK2019: 无法解析的外部符号 "public: __thiscall QFtp::QFtp(class QObject *)" (??0QFtp@@QAE@PAVQObject@@@Z),该符号在函数 "public: __thiscall FtpGet::FtpGet(class QObject *)" (??0FtpGet@@QAE@PAVQObject@@@Z) 中被引用 ftpget.obj ftpclient
错误 4 error LNK2019: 无法解析的外部符号 "public: int __thiscall QFtp::close(void)" (?close@QFtp@@QAEHXZ),该符号在函数 "public: bool __thiscall FtpGet::getFile(class QUrl const &)" (?getFile@FtpGet@@QAE_NABVQUrl@@@Z) 中被引用 ftpget.obj ftpclient
错误 5 error LNK2019: 无法解析的外部符号 "public: int __thiscall QFtp::get(class QString const &,class QIODevice *,enum QFtp::TransferType)" (?get@QFtp@@QAEHABVQString@@PAVQIODevice@@W4TransferType@1@@Z),该符号在函数 "public: bool __thiscall FtpGet::getFile(class QUrl const &)" (?getFile@FtpGet@@QAE_NABVQUrl@@@Z) 中被引用 ftpget.obj ftpclient

------解决方案--------------------
QFtp相关的话,好像要包含QtNetwork4.lib
  相关解决方案