我将一个名为IcecastServer的类添加到我的QT项目中,将头文件添加到pro文件中并添加了一些代码。每次编译时都会出现以下错误:
release/icecastserver.o: icecastserver.cpp:(.text+0x39): 对_imp___ZN10QTcpServerC1EP7QObject'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x50): 对imp_ZN12QHostAddressC1ENS_14SpecialAddressE'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x68): 对_imp___ZN10QTcpServer6listenERK12QHostAddresst'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x73): 对_imp_ZN12QHostAddressD1Ev'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x9d): 对_imp___ZNK10QTcpServer11errorStringEv'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x3d4): 对imp_ZN12QHostAddressD1Ev'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x4bd): 对_imp___ZN10QTcpServerC1EP7QObject'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x4d4): 对_imp_ZN12QHostAddressC1ENS_14SpecialAddressE'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x4ec): 对_imp___ZN10QTcpServer6listenERK12QHostAddresst'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x4f7): 对imp_ZN12QHostAddressD1Ev'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x521): 对_imp___ZNK10QTcpServer11errorStringEv'未定义的引用
release/icecastserver.o: icecastserver.cpp:(.text+0x858): 对_imp_ZN12QHostAddressD1Ev'未定义的引用
我做错了什么?
以下是头文件内容:
#ifndef ICECASTSERVER_H
#define ICECASTSERVER_H
#include <QObject>
QT_BEGIN_NAMESPACE
class QTcpServer;
QT_END_NAMESPACE
class IcecastServer : public QObject
{
Q_OBJECT
public:
explicit IcecastServer(QObject *parent = 0);
signals:
public slots:
private:
QTcpServer *tcpServer;
};
#endif // ICECASTSERVER_H
这是源文件:
#include "icecastserver.h"
#include "QDebug"
#include <QtNetwork/QTcpServer>
#include <QtGui>
IcecastServer::IcecastServer(QObject *parent) :
QObject(parent)
{
tcpServer = new QTcpServer(this);
//tcpServer->listen(QHostAddress::Any,8000);
if (!tcpServer->listen()){
QMessageBox::critical(NULL, tr("Fortune Server"), tr("Unable to start the server: %1.").arg(tcpServer->errorString()));
return;
}
}
QT += network
,可以在 https://doc.qt.io/qt-4.8/qmake-variable-reference.html#qt 找到相关资料。 - n611x007