Qt 5.4.2(自带mingw32)配置Qwt6.1.2

1准备工具:

a.  下载qt5.4.1mingw版   下载大小为842M,然后傻瓜式地安装,在选择一步步地过程中,注意有个地方要全选所有的模块

下载地址为http://www.qt.io/download-open-source/#section-2

打开之后显示如下页面:

Qt5.4以及更早的版本点击最下面的红框下载

 

b.     下载qwt-6.1.2.zip压缩包,大小为5.3M

下载地址为:http://qwt.sourceforge.net/,打开之后页面为:

点击最下面的红色框区域,跳转到下面页面,

点击qwt,页面跳转到:

点击6.1.2,进去之后,就可以下载qwt-6.1.2.zip压缩包,大小为5.3M

2.解压文件

我的Qt安装在了D盘根目录下,因此我为了方便以后查找,我在D:\Qt目录下新建一个Qwt文件夹,其中在一起的Qt5.4.2文件夹是Qt的安装文件,如图所示:

然后把下载下来的qwt- 6.1.2.zip压缩包,放到Qwt文件夹里面,然后解压到当前文件夹,解压之后如图所示:

先把压缩包删掉,然后查看qwt-6.1.2有如下内容:

上面几个文件夹比较重要,先简单说一下,后面都有用

第一个是designer文件夹,里面的内容为:

Src文件夹主要是一些头文件和源文件

examples是一个比较大的例子程序

 

3.采用Qt的命令行进行编译

编译步骤为

1 D:\Qt\Qt5.4.2\5.4\mingw491_32> cd D:\Qt\Qwt\qwt-6.1.2

2. D:\Qt\Qwt\qwt-6.1.2> qmake qwt.pro

3. D:\Qt\Qwt\qwt-6.1.2> mingw32-make

4. D:\Qt\Qwt\qwt-6.1.2> mingw32-make install  //这一步只不过把已经编译后好的文件夹复制到c盘,我觉得不用这一步

 

4.编译完成之后,会在以上文件夹生成一些内容:

1.

其中lib文件是新生成的,可以把lib文件夹拷贝到Qwt文件夹里面,lib里面只留下qwt.dll和qwtd.dll,其余可以删掉,

2.在Qwt里面新建文件夹src,把qwt-6.1.2里src文件的源文件和头文件全部拷贝到新建的src文件夹,如图所示

3.把把qwt-6.1.2里整个examples文件拷贝到Qwt文件夹,最后所有的保留的文件如图所示:

原来的qwt-6.1.2这个大文件可以删掉,也可以留着不管它

4.差点忘了,在qwt-6.1.2里的designer文件夹,生成了新文件plugins如图:

里面也有一个designer文件夹,里面生成了很重要的一个插件,大小为1042kb,我们把这个文件夹也复制一下保存到Qwt文件夹里,然后把这个插件复制到Qt的如下目录,如图:

而网上只说了将这个插件保存到:

D:\Qt\Qt5.4.2\Tools\QtCreator\bin\plugins\designer

我试了一下,前面的那个是必须设置的,而后面的这个感觉不设置也可以,下面的工程依然可以测试成功。

 

5.再新建一个工程测试有没有配置成功

新建的工程.pro文件要有如下设置:

CONFIG+=qwt  //这个感觉可以不要

LIBS+=D:\Qt\Qwt\lib\qwtd.dll //这个是为了找到源文件,否则会提示

undefined reference to `QwtPlot::QwtPlot(QWidget*)'

注意,如果工程选择的是debug版,则选择qwtd.dll

如果工程选择的是release版,则要把qwtd.dll改成qwt.dll

INCLUDEPATH+=D:\Qt\Qwt\src  //这个是为了找到包含的源文件

 

为了方便以后复制写一个没有注释的设置:

CONFIG+=qwt

LIBS+=D:\Qt\Qwt\lib\qwtd.dll

INCLUDEPATH+=D:\Qt\Qwt\src

 

一般运行之后会出现程序异常结束,这时要把qwtd.dll或者qwt.dll拷贝到exe所在文件夹


我是写的word,没想到图片不能粘贴,我已把word文档传到http://download.csdn.net/detail/bladeandmaster88/9742597,大家可以下载下来看


另外我在网上有更好的配置,只需要在新建的项目下添加 CONFIG += qwt就行,但这种方法不详细,我尝试了几下,没成功,希望有一篇像我这样写的详细的帖子。我也希望大家以后写帖子不仅是写给自己看,更要想着写给新手们看的,免得误导别人,哈哈,不说了,就这样吧。

 

你可能感兴趣的:(Qt)