• 6452阅读
  • 1回复

redhat9下qt4.5.3的mysql驱动编译不了, [复制链接]

上一主题 下一主题
离线我是新手
 
只看楼主 倒序阅读 楼主  发表于: 2013-01-02
置顶贴子,此版块的贴子都看了尝试了还不行,
环境:redhat9,qt-x11-opensource-src-4.5.3,mysql-5.1.51,都已经安装成功了,
我的环境下没有如下的include 和lib的目录
"INCLUDEPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/mysql -lmysqlclient_r" mysql.pro
而是
"INCLUDEPATH+=/usr/local/mysql/include/mysql" "LIBS+=-L/usr/local/mysql/lib/mysql -lmysqlclient_r" mysql.pro
这样的目录

报错如下:
[root@localhost mysql]# qmake "INCLUDEPATH+=/usr/local/mysql/include/mysql" "LIBS+=-L/usr/local/mysql/lib/mysql -lmysqlclient_r" mysql.pro
[root@localhost mysql]# ls
Makefile  mysql.pro  qsql_mysql.cpp  qsql_mysql.h
[root@localhost mysql]# make
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I../../../../mkspecs/linux-g++ -I. -I../../../../include/QtCore -I../../../../include/QtGui -I../../../../include -I/usr/local/mysql/include/mysql -I. -I.moc/release-shared -o .obj/release-shared/qsql_mysql.o qsql_mysql.cpp
qsql_mysql.cpp:47:23: qsqlerror.h: 没有那个文件或目录
qsql_mysql.cpp:48:23: qsqlfield.h: 没有那个文件或目录
qsql_mysql.cpp:49:23: qsqlindex.h: 没有那个文件或目录
qsql_mysql.cpp:50:23: qsqlquery.h: 没有那个文件或目录
qsql_mysql.cpp:51:24: qsqlrecord.h: 没有那个文件或目录
qsql_mysql.cpp:229: no type `ErrorType' in `QSqlError'
qsql_mysql.cpp:229: parse error before `,' token
qsql_mysql.cpp: In function `QSqlError qMakeError(...)':
qsql_mysql.cpp:231: return type `struct QSqlError' is incomplete
qsql_mysql.cpp:232: `p' undeclared (first use this function)
qsql_mysql.cpp:232: (Each undeclared identifier is reported only once for each
   function it appears in.)
qsql_mysql.cpp:233: `err' undeclared (first use this function)
qsql_mysql.cpp:235: `type' undeclared (first use this function)
qsql_mysql.cpp:235: invalid use of undefined type `struct QSqlError'
../../../../src/sql/kernel/qsqldriver.h:61: forward declaration of `struct
   QSqlError'
qsql_mysql.cpp: In function `QSqlField qToField(MYSQL_FIELD*, QTextCodec*)':
qsql_mysql.cpp:288: return type `struct QSqlField' is incomplete
qsql_mysql.cpp:290: variable `QSqlField f' has initializer but incomplete type
qsql_mysql.cpp: At global scope:
qsql_mysql.cpp:301: no type `ErrorType' in `QSqlError'
qsql_mysql.cpp:301: parse error before `,' token
qsql_mysql.cpp: In function `QSqlError qMakeStmtError(...)':
qsql_mysql.cpp:303: return type `struct QSqlError' is incomplete
qsql_mysql.cpp:304: `stmt' undeclared (first use this function)
qsql_mysql.cpp:307: invalid use of undefined type `struct QSqlError'
../../../../src/sql/kernel/qsqldriver.h:61: forward declaration of `struct
   QSqlError'
qsql_mysql.cpp: In member function `virtual bool QMYSQLResult::fetch(int)':
qsql_mysql.cpp:486: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:486: warning: cannot pass objects of non-POD type `class QString
   ' through `...'; call will abort at runtime
qsql_mysql.cpp: In member function `virtual bool QMYSQLResult::reset(const
   QString&)':
qsql_mysql.cpp:669: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:669: warning: cannot pass objects of non-POD type `class QString
   ' through `...'; call will abort at runtime
qsql_mysql.cpp:675: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:675: warning: cannot pass objects of non-POD type `class QString
   ' through `...'; call will abort at runtime
qsql_mysql.cpp: In member function `virtual QSqlRecord QMYSQLResult::record()
   const':
qsql_mysql.cpp:733: return type `struct QSqlRecord' is incomplete
qsql_mysql.cpp:734: aggregate `QSqlRecord info' has incomplete type and cannot
   be defined
qsql_mysql.cpp:749: invalid use of undefined type `struct QSqlField'
../../../../src/sql/kernel/qsqldriver.h:62: forward declaration of `struct
   QSqlField'
qsql_mysql.cpp: In member function `bool QMYSQLResult::nextResult()':
qsql_mysql.cpp:777: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:777: warning: cannot pass objects of non-POD type `class QString
   ' through `...'; call will abort at runtime
qsql_mysql.cpp:787: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:787: warning: cannot pass objects of non-POD type `class QString
   ' through `...'; call will abort at runtime
qsql_mysql.cpp: In member function `virtual bool QMYSQLResult::prepare(const
   QString&)':
qsql_mysql.cpp:869: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:869: warning: cannot pass objects of non-POD type `class QString
   ' through `...'; call will abort at runtime
qsql_mysql.cpp:877: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:877: warning: cannot pass objects of non-POD type `class QString
   ' through `...'; call will abort at runtime
qsql_mysql.cpp: In member function `virtual bool QMYSQLResult::exec()':
qsql_mysql.cpp:913: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:913: warning: cannot pass objects of non-POD type `class QString
   ' through `...'; call will abort at runtime
qsql_mysql.cpp:999: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:999: warning: cannot pass objects of non-POD type `class QString
   ' through `...'; call will abort at runtime
qsql_mysql.cpp:1010: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:1010: warning: cannot pass objects of non-POD type `class
   QString' through `...'; call will abort at runtime
qsql_mysql.cpp:1024: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:1024: warning: cannot pass objects of non-POD type `class
   QString' through `...'; call will abort at runtime
qsql_mysql.cpp:1033: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:1033: warning: cannot pass objects of non-POD type `class
   QString' through `...'; call will abort at runtime
qsql_mysql.cpp:1045: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:1045: warning: cannot pass objects of non-POD type `class
   QString' through `...'; call will abort at runtime
qsql_mysql.cpp: In member function `virtual bool QMYSQLDriver::open(const
   QString&, const QString&, const QString&, const QString&, int, const
   QString&)':
qsql_mysql.cpp:1252: incomplete type `QSqlError' does not have member `
   ConnectionError'
qsql_mysql.cpp:1252: warning: cannot pass objects of non-POD type `const class
   QString' through `...'; call will abort at runtime
qsql_mysql.cpp:1259: incomplete type `QSqlError' does not have member `
   ConnectionError'
qsql_mysql.cpp:1259: warning: cannot pass objects of non-POD type `class
   QString' through `...'; call will abort at runtime
qsql_mysql.cpp: In member function `virtual QSqlIndex
   QMYSQLDriver::primaryIndex(const QString&) const':
qsql_mysql.cpp:1333: return type `struct QSqlIndex' is incomplete
qsql_mysql.cpp:1334: aggregate `QSqlIndex idx' has incomplete type and cannot
   be defined
qsql_mysql.cpp:1342: variable `QSqlQuery i' has initializer but incomplete type
qsql_mysql.cpp:1344: variable `QSqlRecord fil' has initializer but incomplete
   type
qsql_mysql.cpp:1344: invalid use of undefined type `struct QSqlRecord'
../../../../src/sql/kernel/qsqldriver.h:64: forward declaration of `struct
   QSqlRecord'
qsql_mysql.cpp: In member function `virtual QSqlRecord
   QMYSQLDriver::record(const QString&) const':
qsql_mysql.cpp:1359: return type `struct QSqlRecord' is incomplete
qsql_mysql.cpp:1360: aggregate `QSqlRecord info' has incomplete type and cannot
   be defined
qsql_mysql.cpp:1369: invalid use of undefined type `struct QSqlField'
../../../../src/sql/kernel/qsqldriver.h:62: forward declaration of `struct
   QSqlField'
qsql_mysql.cpp: In member function `virtual bool
   QMYSQLDriver::beginTransaction()':
qsql_mysql.cpp:1390: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:1390: warning: cannot pass objects of non-POD type `class
   QString' through `...'; call will abort at runtime
qsql_mysql.cpp: In member function `virtual bool
   QMYSQLDriver::commitTransaction()':
qsql_mysql.cpp:1407: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:1407: warning: cannot pass objects of non-POD type `class
   QString' through `...'; call will abort at runtime
qsql_mysql.cpp: In member function `virtual bool
   QMYSQLDriver::rollbackTransaction()':
qsql_mysql.cpp:1424: incomplete type `QSqlError' does not have member `
   StatementError'
qsql_mysql.cpp:1424: warning: cannot pass objects of non-POD type `class
   QString' through `...'; call will abort at runtime
qsql_mysql.cpp: In member function `virtual QString
   QMYSQLDriver::formatValue(const QSqlField&, bool) const':
qsql_mysql.cpp:1433: invalid use of undefined type `struct QSqlField'
../../../../src/sql/kernel/qsqldriver.h:62: forward declaration of `struct
   QSqlField'
qsql_mysql.cpp:1436: invalid use of undefined type `struct QSqlField'
../../../../src/sql/kernel/qsqldriver.h:62: forward declaration of `struct
   QSqlField'
qsql_mysql.cpp:1444: invalid use of undefined type `struct QSqlField'
../../../../src/sql/kernel/qsqldriver.h:62: forward declaration of `struct
   QSqlField'
make: *** [.obj/release-shared/qsql_mysql.o] Error 1
离线我是新手
只看该作者 1楼 发表于: 2013-01-04
XD们给看一下啊,搜索遍了,不知道哪里出了问题
快速回复
限100 字节
 
上一个 下一个