我正在编写这个简单的Qt应用程序,但它显示以下错误。 谁能解释我为什么会收到这些错误?以下是代码段:
#include <QTextStream>
int main()
{
QTextStream out(stdout);
out << "console application\n";
}
编译后的步骤:
qmake -project
qmake .pro file
make
按照上述步骤后,下面是我得到的输出:
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -o text.o text.cpp
text.cpp:1:23: error: QTextStream: No such file or directory
text.cpp: In function ‘int main()’:
text.cpp:5: error: ‘QTextStream’ was not declared in this scope
text.cpp:5: error: expected ‘;’ before ‘out’
text.cpp:6: error: ‘out’ was not declared in this scope
make: *** [text.o] Error 1
平台:Linux
答案 0 :(得分:4)
使用qmake
和make
而不是手动调用编译器。
cd YourProject/
qmake -project
qmake
make
./YourProjectTarget
并确保您调用的qmake
版本是Qt4版本,而不是Qt3版本。您似乎安装了两个版本,并且您可能正在调用Qt3版本。
试试这个:
qmake -version
输出应该是这样的
QMake version 2.01a
Using Qt version 4.8.1 in /usr/lib/x86_64-linux-gnu
为了确保您正在调用正确的qmake
(Qt4),通常可以将qmake
命令替换为qmake-qtX
,其中X
是Qt版本。
cd YourProject/
qmake-qt4 -project
qmake-qt4
make
./YourProjectTarget