• 5776阅读
  • 3回复

编译qt4.3.1的时候忘记加如MYSQL驱动支持 [复制链接]

上一主题 下一主题
离线metalchen
 

只看楼主 正序阅读 楼主  发表于: 2008-03-19
— 本帖被 XChinux 执行加亮操作(2008-03-19) —
我在编译的时候忘记在./confgure 时加上mysql,现在装完后想添加该怎么办?我按照qt4帮助说的
  cd $QTDIR/src/plugins/sqldrivers/mysql
    qmake -o Makefile "INCLUDEPATH+=/usr/local/include" "LIBS+=-L/usr/local/lib -lmysqlclient_r" mysql.pro
    make
make的时候出现
main.cpp: In constructor ‘QMYSQLDriverPlugin::QMYSQLDriverPlugin()’:
main.cpp:53: error: class ‘QMYSQLDriverPlugin’ does not have any field named ‘QSqlDriverPlugin’
main.cpp: At global scope:
main.cpp:57: error: expected constructor, destructor, or type conversion before ‘*’ token
make: *** [main.o] 错误 1
我估计是编译qt时没加入mysql选项。高手看看如何解决?
欢迎加qq讨论:572865248
[ 此贴被metalchen在2008-03-21 09:17重新编辑 ]
离线yuli
只看该作者 3楼 发表于: 2008-06-12
楼主 我也遇到qt连接mysql的驱动问题了! 按照帖子的指示没有让驱动呀!我的环境是xp下qt4.4.0,mysql5.1.0 帮帮我呀! 急用! 我的qq号是419557866 邮箱是yuli_1208@163.com
离线metalchen

只看该作者 2楼 发表于: 2008-03-19
搞定了。。原来qt帮助里的那行有问题
qmake -o Makefile "INCLUDEPATH+=/usr/local/include" "LIBS+=-L/usr/local/lib -lmysqlclient_r" mysql.pro
对于msql5.0来说-lmysqlclient_r 应改为libmysqlclient_r.a
最后编译为 libpsqlmysql.so和libpsqlmysql.so.debug两个文件放在$QTDIR/plugins/sqldrivers目录下。
离线metalchen

只看该作者 1楼 发表于: 2008-03-19
已经前进一步了。原来是在编译QT4的时候如果你没有加入编译mysql选择那么你在你解压.tar.gz的目录下 比如:qt-x11-opensource-4.3.2/src/plugins/sqldrivers/mysq和qt-x11-opensource-4.3.2/src/sql/mysq/目录下分别放有驱动源代码。要在qt-x11-opensource-4.3.2/src/plugins/sqldrivers/mysq进行编译。但是在编译之前要修改qplsq_mysql.h这个源文件所包含的头文件里有一行<mysql.h>要改为<mysql/mysql.h>.因为安装mysql-devl包的时候它是把头文件放到/usr/include/mysql目录下。
现在又提示找不到/usr/bin/ld: cannot find -lmysqlclient_r
现在卡在这里了。。
快速回复
限100 字节
 
上一个 下一个