• 5856阅读
  • 4回复

为什么用qt连接sqlite会出现这么多错误,我头文件都加进去了 [复制链接]

上一主题 下一主题
离线4836
 
只看楼主 正序阅读 楼主  发表于: 2011-04-03
#include <QApplication>  

#include <QSqlDatabase>  

#include <QMessageBox>  

#include <sqlite3.h>

#include <QTextcodec>  

#include <QtSql>

int main(int argc, char *argv[])  

{

QApplication app(argc, argv);  

QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");  



db.setDatabaseName("zieckey.db");  



if ( !db.open())  

{  

QMessageBox::critical(NULL, QObject::tr("Collection"), QObject::tr("open error!"));  

return 0;  

}  



return app.exec();  

}  


报错:

[root@localhost qtsqlite]# qmake -project
[root@localhost qtsqlite]# qmake qtsqlite.pro
[root@localhost qtsqlite]# make
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I../../Trolltech/Qt-4.5.1/mkspecs/linux-g++ -I. -I../../Trolltech/Qt-4.5.1/include/QtCore -I../../Trolltech/Qt-4.5.1/include/QtGui -I../../Trolltech/Qt-4.5.1/include -I. -I. -I. -I. -o qtsqlite.o qtsqlite.cpp
qtsqlite.cpp:2:26: 错误:QSqlDatabase:没有那个文件或目录
qtsqlite.cpp:5:24: 错误:QTextcodec:没有那个文件或目录
qtsqlite.cpp:6:17: 错误:QtSql:没有那个文件或目录
qtsqlite.cpp: In function ‘int main(int, char**)’:
qtsqlite.cpp:10: 错误:‘QSqlDatabase’ 在此作用域中尚未声明
qtsqlite.cpp:10: 错误:expected `;' before ‘db’
qtsqlite.cpp:12: 错误:‘db’ 在此作用域中尚未声明
make: *** [qtsqlite.o] 错误 1
[root@localhost qtsqlite]#
请问怎么解决(我文件是以.cpp结尾的)
离线4836
只看该作者 4楼 发表于: 2011-04-03
回 3楼(vboylin) 的帖子
后来我在qtsqlite.pro里面加入QT=+sql;就可以了,运行./qtsqlite的时候好像没什么结果啊 。怎么回事
离线vboylin
只看该作者 3楼 发表于: 2011-04-03
看样子就是系统变量里没有Qt的工作目录 所以就找不到这些文件 , 解决方法要么在全局变量里添加Qt的目录,要么使用头文件的绝对路径
离线4836
只看该作者 2楼 发表于: 2011-04-03
回 1楼(vboylin) 的帖子
LD_LIBRARY_PATH这个吗?好像都没遭到头文件
离线vboylin
只看该作者 1楼 发表于: 2011-04-03
是不是环境变量的问题呢 头文件用绝对地址看看
快速回复
限100 字节
 
上一个 下一个