zoukankan      html  css  js  c++  java
  • QT4.7访问MySQL的驱动编译过程

    我们假设你已经成功安装了MySQL(我用的是MySQL的安装版)和QT,MySQL的安装路径采用的是其默认安装路径,也就是安装在了C:\Program Files下。下面开始正式讲解QT访问安装版MySQL的驱动的编译方法。

    第一步:

    因为MySQL的安装路径下有空格,而编译访问MySQL的驱动是不能有空格的,所以,我们先在C盘新建一个文件夹,命名为mysql,再将MySQL安装文件下的lib和include文件夹拷贝到刚才新建的那个文件夹下。

    第二步:

    打开打开QT Command,我们可以看到起已经有一条默认路径,(因为我的是安装在D:\Qt文件夹下,所以默认路径为D:\Qt\4.7.3)

    接着输入cd  C:\mysq\lib转到C:\mysq\lib库文件夹下

    再输入reimp -d libmysql.lib (生成 libmysql.def文件)

    接着输入dlltool -k -d libmysql.def -l libmysql.a (生成 libmysql.a文件),接着我们就可以看到出来了: libmysql.def  libmysql.a这两个文件。

    第三步:

    当我们准备好libmysql.a这个库文件之后,我们就可以开始编译之旅了。

    我们输入cd %QTDIR%/src/plugins/sqldrivers/mysql,跳转到QT4.7的安装目录下的src/plugins/sqldrivers/mysql文件夹下(我的是D:\Qt\4.7.3\src\plugins\sqldrivers\mysql)

    接着输入 qmake -o Makefile "INCLUDEPATH+=C:/mysql/include" "LIBS+=C:/mysql/LIB/libmysql.a" mysql.pro  

    (此处特别小心,该路径指向的是我们自己在C盘创建的那个mysql文件夹,且libmysql.a得注意大小写的问题,否则会不成功),此时,我们得到了makefile,

    接着输入make,此时D:\Qt\4.7.3\src\plugins\sqldrivers\mysql下的debug文件夹里边出现调试版本的了,也就是libqsqlmysqld4.a 和 qsqlmysqld4.dll

    接着输入make release , 此时D:\Qt\4.7.3\src\plugins\sqldrivers\mysql下的release文件夹里边出现了release版本,也就是libqsqlmysql4.a 和 qsqlmysql4.dll

    接着我们把生成的libqsqlmysqld4.a  qsqlmysqld4.dll  libqsqlmysql4.a  qsqlmysql4.dll 四个文件拷贝到QT的驱动目录下,即D:\Qt\4.7.3\plugins\sqldrivers目录下

    最后我们再把mysql安装目录下lib文件中的libmysql.dll拷贝到QT安装目录下的bin文件夹中(否则会无法打开与数据库的连接)。

    在文章的最后,可能会有一部分使用MyEclipse/Eclipse的人在使用QT时也去右键单击再添加库,最后安装以上方法编译成功了,该拷贝的也拷贝了,可就是会出现File Not Found的错误的,只需要在pro文件的最后,把因为右键单击添加库文件而自动增加的那几行代码删除就OK了。

     

  • 相关阅读:
    【转载】Android应用框架及常用工具类总结
    【Android】Android开发规范的一点小体会
    【Android】解决Android的ListView控件滚动时背景变黑
    【Android】侧边栏SlidingMenu
    【Android】解决RadioButton+FragmentPagerAdapter+Fragment切换页面数据加载的问题
    【Android】ListView动态视图显示不全
    Android编码规范
    【Android】两个日期相差几天和两个日期比较大小
    Linux基础之快照克隆、Xshell优化、Linux历史
    Android APP打包时,出错:"XXX" is not translated in "af" (Afrikaans), "am" (Amharic)
  • 原文地址:https://www.cnblogs.com/CosyAndStone/p/2560296.html
Copyright © 2011-2022 走看看