Qt-mysql驱动程序

Qt-mysql驱动程序,mysql,visual-studio-2010,qt,visual-studio-2012,qtsql,Mysql,Visual Studio 2010,Qt,Visual Studio 2012,Qtsql,我按照本教程使用VS2010编译mysql驱动程序: 编译失败,错误为:LNK1123:转换为COFF期间失败:文件无效或损坏 我尝试了mysql和qt的多个版本,但总是出现相同的错误 注意:我使用的是Qt-4.8.4和mysql-5.5.32-win32。我将从源代码重建Qt,因为您还需要SQL驱动程序(不仅仅是插件) 驱动程序源位于/src/sql/drivers/mysql下 插件源位于/src/plugins/sqldrivers下 /src/sql/drivers/mysqldriv

我按照本教程使用VS2010编译mysql驱动程序:

编译失败,错误为:
LNK1123:转换为COFF期间失败:文件无效或损坏

我尝试了mysql和qt的多个版本,但总是出现相同的错误


注意:我使用的是Qt-4.8.4和mysql-5.5.32-win32。

我将从源代码重建Qt,因为您还需要SQL驱动程序(不仅仅是插件)

驱动程序源位于/src/sql/drivers/mysql下
插件源位于/src/plugins/sqldrivers下

/src/sql/drivers/mysqldrivers.pri
包含以下内容:

包含(sql驱动程序,全部):sql驱动程序+=psql mysql odbc oci tds db2 sqlite ibase
contains(sql驱动程序,mysql):include($$PWD/mysql/qsql_mysql.pri)

因此,我认为在编译qt之前,您需要运行
配置
选项:
-qt-sql-mysql
-plugin-sql-mysql

重新编译Qt

  • 打开Qt 4.8.4命令提示符
  • cd\qtdir
  • nmake distclean
  • configure-debug and release-platform win32-msvc2010-mp-nomake examples-nomake demos-qt-sql-mysql-plugin-sql-mysql
  • nmake

您可能需要通过添加以下选项将
configure
指向MySQL的正确include/library目录:
-I“c:\path\to\MySQL\include”
-L“c:\path\to\MySQL\lib”

谢谢,我会尝试一下。在我看来,您最好只花时间构建插件。您只需要重建项目的插件部分,因为QtSql模块将在运行时动态加载DLL。从你上面提供的链接,我假设你正在使用这个。相反,你有没有仔细看看你的???@Huytard:我认为学习如何为自己编译和构建Qt框架总是很好的。因为
configure
有很多选项,并且默认值并不总是您想要的(尤其是在Windows上使用Qt时)。但是,我知道完全重建需要几个小时才能完成:)重新安装visual studio纠正了我的错误。我想我的问题与此有关,因为我之前使用的是VS2012。