QT中的qwt控件库的移植(windows,linux)(x86,ARM)

Win10

step1:准备qwt源码

下载地址http://sourceforge.net/projects/qwt/files/qwt/
首先是下面这个界面,点击箭头所指的文件夹
QT中的qwt控件库的移植(windows,linux)(x86,ARM)
然后是下面这个界面,一共有四个文档,图片中已经说明了各个文档作用,我们是win10所以要下载第一个.zip压缩包和第三个.qch文件
QT中的qwt控件库的移植(windows,linux)(x86,ARM)
下载完成后解压到C:\Qt\qwt-6.1.4

setp2:编译

首先我们进入刚才解压的qwt-6.1.4文件夹,打开里面的.pro工程,然后在QT下进行编译
看到那个Release了吗,把它改为Debug,否则你编译出来的库只能在Release模式下才能用
QT中的qwt控件库的移植(windows,linux)(x86,ARM)
编译完成后我们可以在目录中看到一个build-qwt-Desktop_Qt_5_12_1_MinGW_64_bit-Debug的文件夹,进去

step3:将编译好的库添加到QT中

1)将C:\Qt\build-qwt-Desktop_Qt_5_12_1_MinGW_64_bit-Debug\lib目录下的*.dll复制到 C:\Qt\5.12.1\mingw73_64\bin目录下
QT中的qwt控件库的移植(windows,linux)(x86,ARM)
2)将C:\Qt\build-qwt-Desktop_Qt_5_12_1_MinGW_64_bit-Debug\lib目录下的*.a复制到C:\Qt\5.12.1\mingw73_64\lib目录下
3)将编译后生成目录C:\Qt\build-qwt-Desktop_Qt_5_12_1_MinGW_64_bit-Debug\designer\plugins\designer里的 libqwt_designer_plugin.a 和 qwt_designer_plugin.dll 复制C:\Qt\5.12.1\mingw73_64\plugins\designer的目录下

step4:设置头文件,链接库路径

在你自己工程的.pro文件中添加以下内容
LIBS += -L"C:\Qt\5.12.1\mingw73_64lib" -lqwt
INCLUDEPATH += “C:\Qt\qwt-6.1.4\src”
include (C:\Qt\qwt-6.1.4\qwt.prf)

重新启动QT即可
注:以上路径是我的电脑路径与qwt,自己的要根据qwt版本以及自己的电脑安装路径进行设置,但步骤都是一样的。

至于帮助文档的安装,只要有了那个.qch文件,很简单。

Linux

step1:准备qwt源码

在win10部分有说过,我们要下载linux对应的.tar.bz2文件
然后将它放到自己认为合适的地方,我将它放到了QT的安装目录下
然后解压缩得到相应的压缩包,进入这个文件夹qwt-6.1.4

[email protected]:/opt/Qt5.3.2#:  tar -xf qwt-6.1.4.tar.bz2

step2:编译

首先是用qmake生成makefile文件,qmake在你自己QT的安装目录下,看如下命令

[email protected]:/opt/Qt5.3.2/qwt-6.1.4# :/opt/Qt5.3.2/5.3/gcc_64/bin/qmake

然后是编译

[email protected]:/opt/Qt5.3.2/qwt-6.1.4# :make

接着是make install

[email protected]:/opt/Qt5.3.2/qwt-6.1.4# :make install

安装完成后,我们可以得到/usr/local/qwt-6.1.4这样一个文件夹

step3:向QT中添加库与插件

接下来是设置链接器的链接路径,也就是在用户的.bashrc文件末尾添加如下两行

export LD_LIBRARY_PATH=/usr/local/qwt-6.1.4/lib
source ~/.bashrc

拷贝库文件

[email protected]:cp /usr/local/qwt-6.1.4/lib/*  /opt/Qt5.3.2/5.3/gcc_64/lib

拷贝.so文件,这是插件安装,后面的ARM移植就不需要这步了

cp /usr/local/qwt-6.1.4/plugins/designer/libqwt_designer_plugin.so Qt5.3.2/Tools/QtCreator/bin/plugins/designer/ 
cp /usr/local/qwt-6.1.4/plugins/designer/libqwt_designer_plugin.so /Qt5.3.2/Tools/QtCreator/lib/qtcreator/plugins/qmldesigner/

重启之后即可
打开Qtcreator,双击打开一个ui文件,看designer有没有qwt控件。若没有,可以在ui界面下,单击tool菜单 ->form editor ->about Qt designer plugins下点击refresh,应该会有qwt插件

同样,在自己的工程的.pro文件中要添加如下内容
INCLUDEPATH += /usr/local/qwt-6.1.4/include
LIBS += -L”/usr/local/qwt-6.1.4/lib/” -lqwt

ARM

step1:准备源码并进行相应的修改

源码和上一个的linux的是一样的,但是要修改一些东西
将qwtconfig.pri中的如下三行注释掉
QWT_CONFIG += QwtOpenGL
QWT_CONFIG += QwtDesigner
QWT_CONFIG +=QwtExamples

step2:编译源码

这些和上面是一样的,只是用的qmake是你的ARM板子对应的qmake,编译器用的是你ARM板子对应的编译器,但是,这次我们不这样编译,我们直接在qtcreator里面打开源码工程并编译工程生成qwt-build-********这个文件夹注意你的工程一定要把编译器配置成你板子的编译器,环境配置,相信玩嵌入式QT的,应该之前就配置好了。

step3:添加库

首先在创建/usr/local/qwt文件夹将qwt-build-***下面的lib文件夹拷贝到其下面

同时将这个lib文件夹拷贝到开发板的lib下

接着讲qwt-6.1.4下面的src文件夹拷贝到 /usr/local/qwt/下

最后和上面一样,要在自己的工程的.pro文件中写上下面的
INCLUDEPATH += /usr/local/qwt/src/
LIBS += -L"/usr/local/qwt/lib/" -lqwt

OK结束

;