VS2008+Qt4.8.1下使用QtNetwork库
来源:互联网 发布:it学什么有前途 编辑:程序博客网 时间:2024/04/30 13:28
今天第一次在QT工程中用QFtp,QHttp等类写服务器程序,编译的时候发现有错误
错误如下:
1>download.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __thiscall QNetworkAccessManager::QNetworkAccessManager(class QObject *)" (__imp_??0QNetworkAccessManager@@QAE@PAVQObject@@@Z),该符号在函数 "public: __thiscall download::download(class QWidget *,class QFlags<enum Qt::WindowType>)" (??0download@@QAE@PAVQWidget@@V?$QFlags@W4WindowType@Qt@@@@@Z) 中被引用
1>download.obj : error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall QNetworkAccessManager::metaObject(void)const " (?metaObject@QNetworkAccessManager@@UBEPBUQMetaObject@@XZ)
1>download.obj : error LNK2001: 无法解析的外部符号 "public: virtual void * __thiscall QNetworkAccessManager::qt_metacast(char const *)" (?qt_metacast@QNetworkAccessManager@@UAEPAXPBD@Z)
1>download.obj : error LNK2001: 无法解析的外部符号 "public: virtual int __thiscall QNetworkAccessManager::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@QNetworkAccessManager@@UAEHW4Call@QMetaObject@@HPAPAX@Z)
1>download.obj : error LNK2001: 无法解析的外部符号 "protected: virtual class QNetworkReply * __thiscall QNetworkAccessManager::createRequest(enum QNetworkAccessManager::Operation,class QNetworkRequest const &,class QIODevice *)" (?createRequest@QNetworkAccessManager@@MAEPAVQNetworkReply@@W4Operation@1@ABVQNetworkRequest@@PAVQIODevice@@@Z)
1>download.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: virtual __thiscall QNetworkAccessManager::~QNetworkAccessManager(void)" (__imp_??1QNetworkAccessManager@@UAE@XZ),该符号在函数 "public: virtual void * __thiscall QNetworkAccessManager::`scalar deleting destructor'(unsigned int)" (??_GQNetworkAccessManager@@UAEPAXI@Z) 中被引用
1>download.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __thiscall QNetworkRequest::~QNetworkRequest(void)" (__imp_??1QNetworkRequest@@QAE@XZ),该符号在函数 "public: void __thiscall download::startRequest(class QUrl)" (?startRequest@download@@QAEXVQUrl@@@Z) 中被引用
1>download.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: class QNetworkReply * __thiscall QNetworkAccessManager::get(class QNetworkRequest const &)" (__imp_?get@QNetworkAccessManager@@QAEPAVQNetworkReply@@ABVQNetworkRequest@@@Z),该符号在函数 "public: void __thiscall download::startRequest(class QUrl)" (?startRequest@download@@QAEXVQUrl@@@Z) 中被引用
1>download.obj : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __thiscall QNetworkRequest::QNetworkRequest(class QUrl const &)" (__imp_??0QNetworkRequest@@QAE@ABVQUrl@@@Z),该符号在函数 "public: void __thiscall download::startRequest(class QUrl)" (?startRequest@download@@QAEXVQUrl@@@Z) 中被引用
1>F:\my_project\qt\download\Debug\download.exe : fatal error LNK1120: 9 个无法解析的外部命令
一般出现这个问题都是库文件没有添加造成,这里使用QtNetwork就要加QtNetwork的库文件,在debug模式下需要加QtNetworkd4.lib库文件,
在release模式下需要加QtNetwork4.lib库文件
在哪里添加呢,一共有两个地方需要添加,缺一不可
1. 项目->属性->c/c++->常规->附加包含目录->在弹出的对话框中,点那个文件夹形状的按钮添加新行,输入$(QTDIR)\include\QtNetwork
2. 项目->属性->连接器->输入->附加依赖项,添加 QtNetworkd4.lib(debug模式)或者 QtNetwork4.lib(release模式)
- VS2008+Qt4.8.1下使用QtNetwork库
- VS2008+Qt4.8.1下使用QtNetwork库
- zz qt4在vs2008下的使用记录(草稿)
- QT4.8.1 + VS2008
- qt4.6.0 下 vs2008编译
- Qt4.8.2和QtCreator,以及VS2008和VS2010下Qt4.8.1下载地址
- VS2008下Qt4编译MySQL驱动
- vs2008+Qt4.8.1环境下修改exe文件图标的方法
- VS2008集成QT4.8.1环境搭建
- VS2008中使用Qt4.8.0动态链接库的环境变量配置
- XP下vs2008-qt4.8.6编译Qgis:qwt编译
- XP下vs2008-qt4.8.6编译Qgis:QwtPolar编译
- linux下QT4的使用
- VS2008下编译BOOST 1.39库使用
- Windows下使用VS2008编译RobotVision库
- vs2008环境下使用zlib库
- vs2008下安装使用boost库
- windows下使用vs2008编译libuv库
- 一个简单的审批流程模型
- 求余语句%
- 当黑客是我的梦,求高手带我学技术
- 直接插入排序
- 有重复元素的排序问题
- VS2008+Qt4.8.1下使用QtNetwork库
- 使用NGinX+PHP+WordPress+SQLite在U盘上搭建便携版单数据库双语博客系统
- Auto Layout Guide---自动布局指南(二)
- if语句运用
- ORA-00257: archiver error. Connect internal only, until freed 错误的处理方法
- ORA-00257: archiver error. Connect internal only, until freed
- 自加++的应用
- 内存操作函数
- jodaTime 优秀的日期框架