Linux操作系统:Fedora 17
因为MySQL是属于Oracle的,所以Qt库里面没有自带MySQL驱动,但是源码里面提供了编译MySQL驱动的工程文件,所以,就要用这个工程文件自己动手编译MySQLl驱动,编译前需要2个前提条件:
1.安装了mysql-devel,这个包里面包含了mysql的头文件和库
2.要从源码包中找到编译mysql驱动的工程文件
Ps:
因为Qt5.0.0安装是以SDK方式进行,所以安装以后的目录里面是没有源码目录的,也就是src目录
所以要从源码压缩包中解压出来的文件夹中寻找,我的是在这里,只要是从官网上下载的源码包路径基本都一样
qt-everywhere-opensource-src-5.0.0\qtbase\src\plugins\sqldrivers\mysql
编译步骤:
1.进入到源码包中mysql驱动工程文件目录下,我的路径如下:
cd /home/alllen/qt-everywhere-opensource-src-5.0.0/qtbase/src/plugins/sqldrivers/mysql
2.生成makefile文件
为工程文件添加mysql的头文件和库文件,生成makefile
qmake "INCLUDEPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib64/mysql -lmysqlclient_r" mysql.pro
Ps:
必须把include和lib64下的mysql文件夹包含进去,否则的话编译的时候会链接不到文件
3.开始编译
直接 make
编译完成后,会在qt-everywhere-opensource-src-5.0.0/qtbase/plugins/sqldrivers目录下生成
libqsqlmysql.so
这就大功告成了,然后把这个动态链接库文件复制到你的Qt安装目录下的这个位置:
/home/alllen/Qt5.0.0/5.0.0/gcc_64/plugins/sqldrivers