Chinaunix

标题: code::block中如何能编译有qt库的程序 [打印本页]

作者: lyw08china    时间: 2013-11-20 16:51
标题: code::block中如何能编译有qt库的程序
代码如下
#include <iostream>
#include <cassert>
#include <string>
#include <QFile>
#include <QTextStream>
int main()
{
    string="F:\\qtex\\20131115_1815.txt";
    QFile qfile( QString::Local8Bit( strfile.c_str( ) ) );
    cout << "CEFileUtil::readEFile:" << strfile << endl;
    QTextStream qfs( &qfile );
    while (!qfs.atEnd( ))
    {
        const QString qstrline = qfs.readLine( ).simplified( );
        cout << "readLine:" << qstrline.Local8Bit( ).data( ) << endl;
    }
}
编译结果如下?
||=== XX, Debug ===|
F:\qtex\XX\main.cpp|4|error: QFile: No such file or directory|
F:\qtex\XX\main.cpp|5|error: QTextStream: No such file or directory|
F:\qtex\XX\main.cpp||In function 'int main()'
F:\qtex\XX\main.cpp|8|error: 'string' was not declared in this scope|
F:\qtex\XX\main.cpp|9|error: 'QFile' was not declared in this scope|
F:\qtex\XX\main.cpp|9|error: expected ';' before 'qfile'|
F:\qtex\XX\main.cpp|10|error: 'cout' was not declared in this scope|
F:\qtex\XX\main.cpp|10|error: 'strfile' was not declared in this scope|
F:\qtex\XX\main.cpp|10|error: 'endl' was not declared in this scope|
F:\qtex\XX\main.cpp|11|error: 'QTextStream' was not declared in this scope|
F:\qtex\XX\main.cpp|11|error: expected ';' before 'qfs'|
F:\qtex\XX\main.cpp|12|error: 'qfs' was not declared in this scope|
F:\qtex\XX\main.cpp|15|error: 'QString' does not name a type|
F:\qtex\XX\main.cpp|16|error: 'qstrline' was not declared in this scope|
||=== Build finished: 13 errors, 0 warnings ===|

作者: luciker1988    时间: 2013-11-21 09:45
这个明显是你的编译路径不对,最基本的gcc命令,你需要在后面加 -I($dir) 指定你的头文件查找位置,-L($dir)指定你的动态库查找位置, 另外对于QT中QObeject类,是需要先用Qt自带的moc编译器先展开后再编译,具体的资料去搜搜看。初学者不建议用其它编译器编译。
作者: lyw08china    时间: 2013-11-21 10:58

    #include <QtCore\QString>
#include <QtCore\QTextCodec>
#include <QtCore\QFile>
#include <QtCore\QTextStream>
#include <QtCore\QByteArray>
很奇怪,加了QtCore好使了,不管怎么样多谢您回复 2# luciker1988


   




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2