最近搞设计,需要在上位机上绘制曲线,在网上找了找,发现python的matplotlib和Qt的qwt都不错,本着难度最小原则,选择了Qt下面的qwt,安装过程中遇到了编译错误:moc/xxx Error:126等问题,搜了很多帖子,终于解决了,在此记录下解决过程,方便后来者。。。

首先到SourceForge上下载Qwt的源码:https://sourceforge.net/projects/qwt/files/qwt/,这里下载了qwt-6.1.3。windows上安装需要下载zip格式的压缩包。解压之后,为了后续安装方便,我们把解压得到的qwt-6.1.3文件夹重命名为qwt,并将其拷贝到Qt的安装目录,我是将Qt4.8.4和Qt-Creator安装在了一个Qt总目录下,就将qwt拷贝到Qt目录下,如下:

然后进入qwt目录下,对下面这两个文件进行编辑:

找到qwtbuild.pri文件中的如下位置:

将第30行改为:

修改这里的原因在上面注释中已经说得很明白了,在windows下面,无法合并debug和release版本的库文件。保存之后修改第二个文件qwtconfig.pri,找到如下位置:

将其改为:

修改这里的原因是为了方便组织程序,将Qt相关的所有程序都安装到Qt总目录下,这个目录要注意,以后也不能修改,要配合工程文件一起的,要不然会很麻烦。然后在开始-所有程序里找到:

运行之后,切换到qwt目录下,执行:qmake qwt.pro,没有警告,没有错误,就执行make –j,加上-j是为了让cpu多核心参与编译加快编译速度,没有警告和错误,然后执行make install,就会将qwt相关的头文件、库文件等拷贝到我们在qwtconfig.pri里修改的目录,如下:

然后上面的qwt源码文件就可以删除了。。。

将Qwt-6.1.3/lib下面的dll文件拷贝到Qt_4.8.4\bin下,将.a文件拷贝到Qt_4.8.4\lib下,然后将Qwt-6.1.3\plugins\designer下的qwt_designer_plugin.dll拷贝到Qt_4.8.4\plugins\designer下,新建一个Qt gui项目,在pro文件中做出如下修改:

然后,只有用如下方式打开*.ui文件,才能看到qwt插件哦:

然后就可以拖拽空间,进行开发了

然后编译运行,就可以看到正确执行了:

这里说一下,为何需要用Qt Designer打开才能看到qwt插件,而用Qt Creator打开看不到,因为当前的qwt使用mingw进行编译的,而我们安装的Qt Creator是用MSVC编译的:

所以Qt Creator识别不了qwt插件,如果安装的是mingw编译的Qt Creator,或者使用MSVC编译qwt,就可以在Qt Creator里面进行过拽开发啦!总之qwt和Qt Creator的编译器必须一致才可正确识别。这个我抽空会试验一下,成功的话,会再写帖子记录。。。

Qt编译安装qwt错误moc/xxx Error:126的更多相关文章

  1. WIN7 下 Qt Creator 安装 QWT

    WIN7 下 Qt Creator 安装 QWT 环境:WIN7 +QT Creator2.6.2 1.下载QWT源代码 qwt-6.1-rc3.zip 2 编译QWT  open projects- ...

  2. PHP编译安装报错:configure: error: mcrypt.h not found. Please reinstall libmcrypt

    我是在CentOS6.5安装php5.5.28这个版本,PHP编译代码如下: ./configure --prefix=/usr/local/php --with-config-file-path=/ ...

  3. 芯灵思Sinlinx A64 Linux&qt编译安装

    开发平台 芯灵思Sinlinx A64 内存: 1GB 存储: 4GB 详细参数 https://m.tb.cn/h.3wMaSKm 开发板交流群 641395230 前提条件搭建好CentOS环境 ...

  4. Qt编译安装后中文无法显示问题

    闲的蛋疼,把Ubuntu删了,再装10.04的时候,QT编译后运行自己的程序已经不能显示中文了,只能显示英文,字体贼丑... 想了各种办法,都没解决.. 最后:终于搞定: apt-get instal ...

  5. 在RHEL5.2 64bit下编译安装log4cxx错误

    apache-log4cxx.0.10.0 依赖于apache-apr和apache-apr-utils两个包 先安装他们俩,然后编译log4cxx,发现make失败,错误如下 ronized.o . ...

  6. Centos 7.5源码编译安装zabbix4.0报fatal error: mysql.h: No such file or directory

    系统环境:CentOS 7.5是最小化安装的 编译信息 编译选项: root@Server01 zabbix-]# ./configure --prefix=/usr/share/applicatio ...

  7. 编译安装pgbouncer-checking for OpenSSL... configure: error: not found

    花了一上午时间将pgbouncer的参数通读了一遍,对他有个大致的了解:1.配置分为连接池和pgbouncer两个部分[database]\[pgbouncer ].2.一条记录对应创建一个连接池,连 ...

  8. Centos 编译安装bind错误

    [root@linux-node1 tmp]# tar xf bind-9.11.1-P1.tar.gz [root@linux-node1 tmp]# cd bind-9.11.1-P1 [root ...

  9. 编译安装nginx错误解决!

    编译安装执行 ./configure --prefix=/root/web/nginx --sbin-path=/root/web/nginx/sbin/nginx --conf-path=/root ...

随机推荐

  1. POJ 3666 Making the Grade

    Description A straight dirt road connects two fields on FJ's farm, but it changes elevation more tha ...

  2. Swift闭包概念与常见使用场景总结

    ·Swift 闭包 闭包(Closures)是自包含的功能代码块,可以在代码中使用或者用来作为参数传值. Swift 中的闭包与 C 和 Objective-C 中的代码块(blocks)以及其他一些 ...

  3. 对xml操作

    已知有一个XML文件(bookshop.xml)如下: <?xml version="1.0" encoding="gb2312" ?> <b ...

  4. Qt持久性对象进行序列化(同时比较了MFC与Java的方法)

    Mfc和Java中自定义类的对象都可以对其进行持久性保存,Qt持久性对象进行序列化当然也是必不可少的.不过这个问题还真困扰了我很长时间……Mfc通过重写虚函数Serialize().Java则是所属的 ...

  5. 关于安装linux时要怎么分区的考虑的參考方式?

    对于使用最小化安装的centos7文件夹列表,注意链接方式的文件夹会在统计占用空间时不会算入的; watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcWlkaX ...

  6. flex布局之兼容

    Android 2.3 开始就支持旧版本 display:-webkit-box; 4.4 开始支持标准版本 display: flex; IOS  6.1 开始支持旧版本 display:-webk ...

  7. ambari 卸载脚本

    #!/bin/bash # Program: # uninstall ambari automatic PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bi ...

  8. 四个session

  9. HTML中CSS入门基础

    HTML.CSS 实用css有三种格式:内嵌:内联:外部: 分类:内联:写在标记的属性位置,优先级最高,重用性最差内嵌:写在页面的head中,优先级第二,重用性一般外部:写在一个以css结尾的文件中, ...

  10. rtsp/rtmp/hls/onvif测试源以及ffmpeg在流媒体方面的应用

    一.rtsp/rtmp/hls/onvif测试源 1. rtsp rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov 2.rtmp rtmp://l ...