• Qt编译安装qwt错误moc/xxx Error:126


    最近搞设计,需要在上位机上绘制曲线,在网上找了找,发现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.4in下,将.a文件拷贝到Qt_4.8.4lib下,然后将Qwt-6.1.3pluginsdesigner下的qwt_designer_plugin.dll拷贝到Qt_4.8.4pluginsdesigner下,新建一个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的编译器必须一致才可正确识别。这个我抽空会试验一下,成功的话,会再写帖子记录。。。

  • 相关阅读:
    中科院大牛博士是如何进行文献检索和阅读(好习惯受益终生)(转载)
    大家平常都喜欢看哪些人的博客,共享…… ZZ (水木)
    heart ultrasound from american society of echocardiography
    用TWaver实现组合的Chart
    Hello TWaver Android
    关注细节-TWaver Android
    TWaver Java内存占用测试
    TWaver Android 概述
    机器学习中的相似性度量
    最大熵模型(一)
  • 原文地址:https://www.cnblogs.com/goodhx/p/6113473.html
Copyright © 2020-2023  润新知