我是靠谱客的博主 平常香氛,最近开发中收集的这篇文章主要介绍qwtplot3d安装配置过程,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本文主要源于http://blog.csdn.net/qinpanke/article/details/8062517博文,但是按照过程中遇到新的问题,经过摸索,补充了2

1、从网上下载qwtplot3D的最新版本:http://qwtplot3d.sourceforge.net/

2、解压qwtplot3d-0.2.7.zipC盘根目录下(注意:路径中不能带有中文汉字)。

3、打开C:qwtplot3d-0.2.7qwtplot3d,将会看到qwtplot3d.pro文件。

4、用QtCreator打开qwtplot3d.pro文件,并执行编译命令会出现如下如下错误:No rule to target 'Makefile.Debug'.  Stop.如下图所示         

         解决方法:

         双击并打开上图左侧中的qwtplot3d.pro文件,修改该文件部分内容:  win32:TEMPLATE = vclib  修改为: win32:TEMPLATE = lib

         5、修改完成后,再次点击编译运行。会再次出现错误:'stderr' was notdeclared in this scope    'fprintf' was notdeclared in this scope。 如下图所示:         

          解决方法:

          打开左侧Source -> src -> qwt3d_function.cpp文件。并在顶部添加语句: #include "stdio.h"

(注:本人在安装的时候(win1064位,QT 5.7)并没有出现第5步的情况,而是提示如下:

E:qwtplot3dincludeqwt3d_openglhelper.h:67:错误:'gluErrorString' was not declared in thisscope
E:qwtplot3dincludeqwt3d_openglhelper.h:104:
错误:'gluUnProject'was not declared in this scope
E:qwtplot3dincludeqwt3d_openglhelper.h:120:
错误:'gluProject'was not declared in this scope

解决方法:

qwt3d_openglhelper.h中添加#include <GL/glu.h>

之后,重新编译,又出现下面错误400多处,原因是没有包含库之类的)

解决办法:

qwtplot3d.pro文件中添加LIBS+=-lopengl32-lglu32–lglut

重新编译后,出现下面窗口(图片看不了,就是提示文档找不到):

我也不知道是什么,选择了cancel,不管它,结果在C:qwtplot3d-0.2.7build-qwtplot3d-Desktop_Qt_5_7_0_MinGW_32bit-Debuglib中发现了libqwtplot3d.aqwtplot3d.dll文件,也就是说编译成功了。

6、再次编译。即可顺利完成qwtplot3d工程的编译,不会再遇到错误。此时,打开C:qwtplot3d-0.2.7qwtplot3dlib文件夹。会看到生成两个动态库文件:libqwtplot3d.aqwtplot3d.dll。这就是编译好的qwtplot3d的动态库文件。作为开发而言,就可以直接使用。当然,我们不仅仅是希望编译生成动态库,还希望将qwtplot3d自带的Demo编译并运行通过。没问题,继续看下面的。

7、编译qwtplot3d自带的Demo程序。打开C:qwtplot3d-0.2.7qwtplot3dexamples文件夹。用QtCreator打开example.pro文件,点击编译运行,同样会出现No rule to target'Makefile.Debug'.  Stop的错误。这里需要修改的pro文件是common.pro文件。

         解决方法:

         打开common.pro文件。删除语句:TEMPLATE = vcapp QMAKE_LFLAGS +=/NODEFAULTLIB:msvcrt

8、修改完成后,再次编译会出现 :: error: ../../lib/qwtplot3d.lib: No such file or directory 。(注意:也可能是出现无法 make的错误。其实也是这个原因导致的,同样按照下面的修改方法也可以解决)

        修改方法:

        打开common.pro文件。修改语句:LIBS += ../../lib/qwtplot3d.lib 修改为:LIBS += ../../lib/libqwtplot3d.a

(注:这个修改方法不知道是不是我理解错了,我照着复制进去,可是仍然报错,最后在C盘创建了一个文件夹,将lib文件夹放进去,修改common.pro文件为LIBS+= C:/Qt/lib/libqwtplot3d.a,最后运行成功,可是费劲!)

9、修改完成后,再次编译就不会出现错误。但是,编译完成运行的时候出现:

        StartingC:qwtplot3d-0.2.7qwtplot3dexamples-build-desktopbinautoswitch.exe...

       C:qwtplot3d-0.2.7qwtplot3dexamples-build-desktopbinautoswitch.exe exitedwith code -1073741515

       出现这个问题的原因是动态库没有在example生成的可执行文件的目录下。

   解决方法:

   打开C:qwtplot3d-0.2.7qwtplot3dlib文件夹,拷贝两个文件libqwtplot3d.aqwtplot3d.dll。到文件夹:C:qwtplot3d-0.2.7qwtplot3dexamples-build-desktopbin。(注意:这是我example生成的文件夹,要看一下你自己的生成的是不是这个位置)

(运行Demo时候仍旧会出现几百处错误,在common.pro文件中添加LIBS+=-lopengl32-lglu32–lglut即可

   10、正确运行。看一下运行结果吧。

  

 

最后

以上就是平常香氛为你收集整理的qwtplot3d安装配置过程的全部内容,希望文章能够帮你解决qwtplot3d安装配置过程所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部