0

我正在尝试为 Qt 项目构建 MySQL 插件。我正在按照其他地方给出的说明进行操作,但似乎 qmake 生成的 makefile 有错误,并且生成 DLL 的 nmake 失败。

有人有替代程序吗?

有谁知道为什么我们不能为此下载 MySQL DLL?为什么每个人都必须建造它?

这是过程;

qmake "INCLUDEPATH+=c:/'Program Files'/MySQL/'Connector C 6.0.2'/include" "LIBS+=-Lc:/'Program Files'/MySQL/'Connector C 6.0.2'/lib/debug " mysql.pro

c:\QtSDK\QtSources\4.8.0\src\plugins\sqldrivers\mysql>nmake debug

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.
    "c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\nmake.exe" -f Makefile.Debug

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01

Copyright (C) Microsoft Corporation.  All rights reserved.

    rc -D_DEBUG -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_DLL -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3
DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -fo debug\qsqlmysqld_resource.res qsqlmysqld_resource.rc

'rc' is not recognized as an internal or external command,
operable program or batch file.
NMAKE : fatal error U1077: 'rc' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\nmake.exe"' : return code '0x2'
Stop.
4

2 回答 2

2

我会冒险猜测您是从普通命令提示符/窗口而不是 Visual Studio 版本构建的。这意味着可能并非所有路径都设置正确,并且找不到 rc 命令。

所以尝试再次构建,但这次来自Visual Studio 命令提示符。例如,您可以在开始菜单的 Visual Studio 条目中的“Visual Studio 工具”下找到它。

您也可以运行VCVARS32在常规命令提示符中设置所有适当的路径,但实际上没有必要。

于 2012-07-11T06:53:33.110 回答
0

虽然我解决了使用 nmake 构建插件的问题,但它并没有产生 Qt 识别的插件。

相反,我使用 QtCreator 和包含在 (Your Qt source folder path/src/plugins/sqldrivers/mysql

必须编辑 .pro 文件,以便包含和 lib 路径与您的 MySQL 安装相匹配。.pro 文件中的条目在路径中包含空格,但这并没有构建。我必须从 mysql 路径中取出所有空格才能构建它。我将 MySQL 从“Program Files (x86)”拖到 C: 并从文件夹名称中删除了空格。

接下来,调试版本指定 -llibmysqld 似乎不再存在。我将其更改为 -llibmysql (与发行版相同),然后两个 dll 都构建得很好。

我使用了 Qt Creator 2.6.2、Qt 4.8.4。生成的 dll 可用于在 Visual Studio 2010 和 Windows 7 下构建的 Qt 项目。

于 2013-03-13T17:09:49.707 回答