环境 win7 64 QT5.3.1 mingw482_32 带用msvc Qtcreator
目的 使qwt插件可以在Qtcreator上显示
qwt6.1.2 下载地址
http://sourceforge.net/projects/qwt/files/qwt/
编译环境配置
配置好编译环境,在系统环境里添加相应的(qmake.exe,mingw32-make.exe)路径,如(D:\Qt\Qt5.3.1\5.3\mingw482_32\bin;D:\Qt\Qt5.3.1\Tools\mingw482_32\bin;)
以下是安装路径
qt mingw482_32安装路径:D:\Qt\Qt5.3.1\5.3\mingw482_32\bin
qwt6.1.2解压路径:D:\Qt\qwt-6.1.2\qwt-6.1.2
qt mingw482_32编译qt cretor路径:D:\Qt\qt-creator-build
安装qwt---可以参考下http://www.bubuko.com/infodetail-623823.html
1.从qt的cmd环境进入qwt-6.1.2目录,运行
qmake qwt.pro
mingw32-make
mingw32-make install
(第二步可以用下面命令
mingw32-make -i -k 2>err.log
说明:
-i 忽略错误
-k 某些目标不能达成时仍然继续进行
2>err.log 将发生的错误输出到当前目录的err.log文件中
)
2.编译完成后将会在lib下生成qwt.dll(release调用)、qwtd.dll(d:debug调用)和lib,同时会生成qt creator使用的插件qwt_designer_plugin.dll、libqwt_designer_plugin.a
将D:\qt\Qwt-6.1.2\lib\qwtd.dll、qwt.dll拷贝到 D:\Qt\Qt5.3.1\5.3\mingw482_32\bin下,
将D:\qt\Qwt-6.1.2\lib\libqwt.a、libqwtd.a拷贝到 D:\Qt\Qt5.3.1\5.3\mingw482_32\bin下
(这里没有qwtd.lib、qwt.lib文件)
将C:\qt\Qwt-6.1.2\include目录下的所有.h和 C:\qt\Qwt-6.1.2:\features\qwt.prf、qwtconfig.pri、qwtfunctions.pri分别放入一个空文件夹Qwt和Qwt\features中,
再将该Qwt拷贝到D:\Qt\Qt5.3.1\5.3\mingw482_32\include目录下。
这里 Qt Designer能使用插件,但是Qt Creator里Designer无该插件
原因:因为Qt官方编译的Qt Creator是用VC编译的,而你的插件是用MinGW编译,两者的dll并不能通用。
解决方式一:mingw编译qt官网下载的qt creator的源码,保用编译完成qtcreator就可以解决dll只能用于Designer,而不能用于qtcreator集成中的designer问题。
解决方式二:直接保用Qt Designer来设置窗口控件,不使用qtCreator 里Designer(程序也能显示自定插件,但是qtCreator 里Designer是显示不了的)。
这里使用方法一;
3.编译qt creator源码--http://qt-project.org/wiki/Building-Qt-Creator-from-Git-SimplifiedChinese#ff382c48d52bfef940d5adea76426b1c
下载qt creator源码,版本自由选择,这里选Qt5.3.1自带的qt creator版本号3.1.2
https://download.qt.io/official_releases/qtcreator/3.1/
或
https://qt.gitorious.org/qt-creator/qt-creator/source/7179514a880bde438459c5b452737ff5900a3432: 可以在右上角brach:master选择版本
这里下载qt-creator-opensource-src-3.1.2.zip
解压下载好的源码(我这里改名为qt-creator-3.1.2),开始编译
cd qt-creator-3.1.2
qmake -r .\qtcreator.pro
等待一段时间,这将会生成Makefile ,完事了继续编译
mingw32-make
安装Qt Creator (可选,这里不选安装),这里不装也可以使用原来的qt creator选择新编译的编译环境
mingw482_32 install INSTALL_ROOT=$INSTALL_DIRECTORY
4.--对应的qt creator插件路径
将D:\Qt\qwt-6.1.2\qwt-6.1.2\designer\plugins\designer\qwt_designer_plugin.dll 、 libqwt_designer_plugin.a
拷贝到D:\Qt\qt-creator-3.1.2\lib\qtcreator\plugins\QtProject目录下(为编译好的qt creator 路径)
将D:\Qt\qwt-6.1.2\qwt-6.1.2\lib 的libqwt.a、libqwtd.a、qwtd.dll、qwt.dll 拷贝到D:\Qt\qt-creator-3.1.2\lib\qtcreator
如果添加了安装Qt Creator选项,需要配置第2选项,
5.好了,下面测试下功能:
新建工程,Qt Qwt
在pro中加入:
LIBS += -L"D:/Qt/Qt5.3.1/5.3/mingw482_32/lib" -lqwtd
INCLUDEPATH += D:/Qt/Qt5.3.1/5.3/mingw482_32/include/Qwt
include (D:/Qt/Qt5.3.1/5.3/mingw482_32/include/Qwt/features/qwt.prf)
添加qwt帮助文档:同样在源码下载处可以下载
qwt-6.1.2.qch
将下载的qwt-6.1.2.qch文件拷贝到D:\Qt\Qt5.3.1\Docs\Qt-5.3或者,运行qt creator->tools->options->help->documentation->add,添加qwt-6.1.2.qch文件。
使用qwt时,要在.pro文件里添加CONFIG?+=qwt,否则会无法找到qwt库