开发环境:

操作系统:Ubuntu12.04

其它:qt-4.8.5;qtcreator-2.6.1;qwt-6.1.0;核心板arm6410

Ubuntu下Qwt插件安装步骤网上有很多资料,可 以参考http://www.cnblogs.com/ella822/archive/2010/05/11/1733011.html我是在win7下用虚拟机运行 ubuntu12.04 版本,由于用 Qt 需要画曲线图什么的,准备安装Qwt 插件,以下是我个人参考网上资料,再结合自己情况的安装方法,有些地方不对请谅解,该方法仅供参考。我用的是 qwt-6.1.0.tar.bz2这个包,可 以从http://qwt.sourceforge.net/ 里面点 project page 再点Files再点qwt,最后从里面选自己想要的版本和包的格式就行(或直接输入http://sourceforge.net/projects/qwt/files/qwt/ 也一样的)。我用的是root 用户,在ubuntu 终端下输入:tar jxvf qwt-6.1.0.tar.bz2 命令解压下载的包,我是在代码包所在的目录下执行该命令的,解压到相同目录下,读者可根据需要自行修改。之后输入命令:/usr/local/Trolltech/Qt-4.8.5/bin/qmake 回车,再输入:make 回车,最后输入:make install 回车,就基本装完了。这里说一下,要执行 qmake,要先装好 Qt,qmake 是与编译Qt 程序的那个Qt 编译器相关联的。因为我用的是Qt-4.8.5 的,直接使用它的qmake 弄好了,后面的 make 和 make install一般不会出问题的。

但我自己发现重新建一个带 ui 的工程,点ui 文件,发现里面设 计界面里控件一列里没有qwt的控件,在Qt Creator 里ui 设计界面下点工具—>界面编辑器—>关于 Qt 设计师插件...里,看看Loaded Plugins 里面是否有libqwt_designer_plugin_so 这一项,没有这一 项说明插件还不能在ui 界面设计里直接用控件拖来拖去,只能代码编写(我的是没有这一项,而且有一项 Failed Loading Plugins和Loaded Plugins 并排 ,Failed Loading Plugins 里有

libqwt_designer_plugin_so 这一项。要解决这一问题,我将/usr/local/qwt-6.1.0/lib(上面执行 make install 后会在/usr/local(默认安装路径)下生成 qwt-6.1.0这个文件夹的)下的文件复制到装QtCreator目录下面的lib目录里(我的是复制到/opt/qtcreator-2.6.1/lib/qtcreator下),再将/usr/local/qwt-6.1.0/plugins/designer下的文件复制到装Qt Creator 目录下面的designer 目录(我的是复制到/opt/qtcreator-2.6.1/bin/designer 目录下面)。之后重新用Qt Creator 打开一个带ui的工程,点ui文件,看看设计窗口控件 一列里有没有 Qwt Widgets 这一条。我经过上面的操作已经有了(如下图 )可以正常使用了,这样整个Qwt 安装就结束了。


如果要用到Qwt 进行编程,只要在工程文件.pro 文件里添上两行语 句: INCLUDEPATH += /usr/local/qwt-6.1.0/include LIBS += -L"/usr/local/qwt-6.1.0/lib/" -lqwt 上面的路径就是执行 make install 命令默认安装 Qwt 的路径,一般都是这个,只要版本号改下就行。由于我用的是root 用户,命令前面都不加 sudo,像复制粘贴我是直接用鼠标操作的,其他用户用命令的话可能需加 sudo。具体的命令这里就不说了,网上很多的。


下面是关于arm中移植qwt的方法:

因为我已经安装了x86版的qwt6.1.0,所以在编译arm版本前修改了qwt安装路径,unix下默认安装路径是/usr/local/qwt-$$QWT_VERSION,在qwtconfig.pri中将其改为其它路径,我的是/usr/local/qwt-arm-$$QWT_VERSION,接下来的步骤和X86上的类似,可以参考:http://blog.csdn.net/sh_sige/article/details/16807925;安装好后就会在/usr/local文件夹下找到qwt-arm-6.1.0文件夹,这样系统就具备了两个版本的qwt,这对于开发pc或者arm嵌入式图形应用程序提供很方便的转换,唯一区别就是在自己编写qt程序使用了qwt类交叉编译时记得修改工程的pro文件:

INCLUDEPATH += /usr/local/qwt-arm-6.1.0/include/
LIBS += -L"/usr/local/qwt-arm-6.1.0/lib/" -lqwt

关于第三方库安装的总结:

下面来总结一下安装第三方类库的普遍方法:

   1.qmake要选对。

    这一步是成功的基石。因为你的linux下可能包含别的qt版本(和系统一块安装的,最常见的是qt3)。若是你直接切入到qwt目录下执行qmake命令,系统默认的是qt3的qmake,一步步走下去,最终你会发现qwt控件集成到了qt3的designer中。

   2.make工程时,要确保找到相应的库文件。

   你可以将编译出来的qwt库文件copy到系统默认的搜索路径中(即和qt的库文件放到一块,lib或者designer目录下的库文件都要放到相应的位置)——这一点本人还不是很明白具体的操作,如果有朋友了解,还请多指教。

当然也可以在工程文件中添加头文件和库文件的搜索路径。如下:

         INCLUDEPATH += /usr/local/qwt-6.1.0/include
         LIBS += -L"/usr/local/qwt-6.1.0/lib/" -lqwt

只要做好这两条,安装第三方类库就不再那么繁琐了。



补充:后来发现,由于qwt编译所用qt版本与qtcreator支持的qt版本不一致导致安装后的qwt插件无法被识别,所以在选择qt版本这些因素也需要作为参考。


Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐