【问题标题】:Integrating QWT 6.0.1 with Qt Creator/Designer 4.8.0将 QWT 6.0.1 与 Qt Creator/Designer 4.8.0 集成
【发布时间】:2012-03-11 02:10:11
【问题描述】:

我在 Windows 7 64 位机器上安装了 Qt SDK 版本 4.8.0(到C:\QtSDK)。我还使用 MSVC2010 安装并成功编译了 QWT 6.0.1。

我可以通过链接库在 C++ 代码中使用 QWT;但是,当我尝试使用该插件时,我收到了一个似乎在 Google 上找不到的错误。

我失败的插件错误是:

插件“C:/QtSDK/QtCreator/bin/designer/qwt_designer_plugin.dll”使用了不兼容的 Qt 库。 (4.8.0) [发布]

我的 QWTbuild.priCONFIG += debug_and_release

我通过以下方式构建了插件:

C:\QtSDK\QWT\qwt-6.0.1\designer > qmake Designer.pro
C:\QtSDK\QWT\qwt-6.0.1\designer > nmake 发布

然后我将C:\QtSDK\QWT\qwt-6.0.1\designer\plugins\designer 中生成的.dll (qwt_designer_plugin.dll) 复制到我的QtCreator 插件路径(C:\QtSDK\QtCreator\bin\designer)

我还把生成的.dll.lib 放在Qt 插件文件夹(C:\QtSDK\Desktop\Qt\4.8.0\msvc2010\plugins\designer) 中。

我还将我的库链接到包含我正在尝试构建的表单的项目文件中。

我确定我缺少一些小东西,但我似乎找不到它。
我在这里做错了什么?

任何帮助将不胜感激。

问候,

亚历克西斯

【问题讨论】:

    标签: qt qwt


    【解决方案1】:

    Qt 插件应使用与加载它们的应用程序相同的 Qt 版本或具有相同主编号的较低版本。

    由于当前包含在 Qt SDK 中的 Qt Creator 似乎使用 Qt 4.7.4,您可能应该为该版本的 Qt 重新编译 Qwt。

    【讨论】:

    • 好的 - 我这样做了,并从 QT SDK 安装了 QT4.7.4。我将 qwt 添加到我的路径中并遵循These Instructions,包括编辑批处理文件。我的错误已更改为:“无法加载库 C:/QtSDK_4.7/QtCreator/bin/designer/qwt_designer_plugin.dll:找不到指定的程序。”还有什么想法吗?再次感谢您!
    • @KittenWhiskers 这些指令用于 MinGW 编译器。 QtCreator 是用 VC++ 编译的,所以插件也应该是(你也可以用 MinGW 重新编译 QtCreator,但也不是那么简单)。
    • 对不起,我应该指定 - 我从大约 12 号开始遵循这些说明,设置路径变量等。我的系统上没有 mingw,所有内容都是使用 msvc2010 编译的。我应该做些什么不同的事情吗?