C++ 为Qt5.7构建MySQL插件

C++ 为Qt5.7构建MySQL插件,c++,mysql,qt,dll,C++,Mysql,Qt,Dll,所以我尝试在Windows上为Qt5.7构建MySQL插件。通过执行以下操作,我成功地生成了qmysqld.dll和qmysql.dll 1)下载Qt源文件 2)导航到QTDIR\qtbase\src\plugins\sqldrivers并在qsqldrivers.pro文件上运行qmake,同时链接mySql\include和mySql\libmysql.lib。具体而言,我运行了以下命令: qmake "INCLUDE+=mysql-5.7.17-win32\include" "LIBS+=

所以我尝试在Windows上为Qt5.7构建MySQL插件。通过执行以下操作,我成功地生成了qmysqld.dll和qmysql.dll

1)下载Qt源文件
2)导航到
QTDIR\qtbase\src\plugins\sqldrivers
并在qsqldrivers.pro文件上运行qmake,同时链接mySql\include和mySql\libmysql.lib。具体而言,我运行了以下命令:

qmake "INCLUDE+=mysql-5.7.17-win32\include" "LIBS+=C:\mysql-5.7.17-win32\lib\libmysql.lib" -o MakeFile mysql.pro
3)运行
mingw32 make
来编译项目
4)然后我将qmysqld.dll和qmysql.dll从
QTDIR\plugins\sqldrivers
移动到
actualqtsinstallation\mingw53\u 32\plugins\sqldrivers
文件已经存在,需要替换

这是我正在尝试运行的测试代码

QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL", "my_sql_db");
    db.setHostName("localhost");
    db.setDatabaseName("test");
    db.setUserName("root");
    db.setPassword("");

    if(!db.open())
        qDebug() << db.lastError().text();
我能想到的唯一一件事是,我在qsqlmysqld.dll上运行了DependencyWalker程序,它说LIBMYSQL.dll、qt5corder.dll和QT5SQLD.dll缺失,几乎所有其他依赖项都是针对x64位体系结构的(与32位的qsqlmysql.dll相反)。我对这意味着什么知之甚少,这是我第一次使用DependencyWalker,但这是否表明我以某种方式将dll构建为32位,需要将其重新编译为64位,这应该可以解决问题


对此我感到非常困惑,一个多月来我一直在努力让它工作。

64位进程无法加载32位DLL。
"Driver not loaded Driver not loaded"
Driver:  ("QSQLITE", "QMYSQL", "QMYSQL3", "QODBC", "QODBC3", "QPSQL", "QPSQL7")