添加
ui->customPlot->setOpenGl(true);
qDebug() <<"Is start opengl?=" << ui->customPlot->openGl();ui->customPlot->setOpenGl(true); 使用OpenGL 会出现如下情况
网上找到资料
在pro文件加:Qt +=opengl
添加依赖项:
DEFINES += QCUSTOMPLOT_USE_OPENGL
如果报错不能使用glu的库,这个情况是缺少库文件:
加载qt5.x自带的OpenGL库文件:LIBS+=-lopengl32 -lglu32。
测试 对于我没用 还是启动不了
需要加载glue
.下载
Linux 下安装
Linux 下一般使用开源的 freeglut,安装相对于 windows 比较方便,比如 Ubuntu 下安装只要一行命令:
$ sudo apt-get install build-essential freeglut3 freeglut3-dev binutils-gold
Windows 下安装
1)需要glut库的请下载 glut-3.7.6-bin.zip (GLUT for Win32 dll, lib and header file )(已经十几年没更新过了所以就是这个版本了!)
下载地址:https://user.xmission.com/~nate/glut.html
2)freeglut库里面有两个版本,都包含32和64位的,根据Qt的配置自己选择:
下载地址:http://www.transmissionzero.co.uk/software/freeglut-devel/
Visual Studio:freeglut 3.0.0 MSVC Package
MinGW :freeglut 3.0.0 MinGW Package
2.环境配置:
msvc环境配置:(64位版本):
- .解压后将freeglut文件中的bin文件下的x64文件下的freeglut.dll,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\msvc2017_64\bin目录下;
- .解压后将freeglut文件中的include文件下的GL文件,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\msvc2017_64\include目录下;
- .解压后将freeglut文件中的lib文件下的x64文件下的freeglut.lib,安装路径D:\Qt\Qt5.9.4\5.9.4\msvc2017_64\lib目录下;
MinGW环境配置(32位版本):
- .解压后将freeglut文件中的bin文件下的freeglut.dll,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\mingw53_32\bin目录下;
- .解压后将freeglut文件中的include文件下的GL文件,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\mingw53_32\include目录下;
- .解压后将freeglut文件中的lib文件下的libfreeglut.a、libfreeglut_static.a文件,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\mingw53_32\lib目录下;
3.切换到自己的程序中,在 **.pro 文件中添加:
QT += opengl
MSVC版本:
#第一种就是直接加据对路径
LIBS += D:/Qt/Qt5.12.6/5.12.6/msvc2017_64/lib/freeglut.lib D:/Windows/Kits/10/Lib/10.0.17763.0/um/x64/OpenGL32.Lib
#第二种就是直接加库文件,这个的前提是你的库文件必须在系统目录或者工程编译生成目录build-untitled-Desktop_Qt_5_12_6_MSVC2017_64bit-Debug下
LIBS += freeglut.lib OpenGL32.Lib
#第三种就是多个库在同一个文件夹下的时候,连接使用
LIBS += -LD:/Qt/Qt5.12.6/5.12.6/msvc2017_64/lib -lfreeglut -lOpenGL32
#第四种就是相对路径./表示生成目录build-untitled-Desktop_Qt_5_12_6_MSVC2017_64bit-Debug
LIBS += -L./ -lfreeglut -lOpenGL32
MinGW版本:
LIBS += -LD:/Qt/Qt5.12.6/5.12.6/mingw73_32/lib -llibfreeglut -lopengl32
LIBS模板
#
O
U
T
P
W
D
表
示
编
译
生
成
的
那
个
目
录
,
OUT_PWD表示编译生成的那个目录,
OUTPWD表示编译生成的那个目录,PWD表示.pro文件的那个目录
#win32:CONFIG(release, debug|release): LIBS += -LKaTeX parse error: Expected 'EOF', got '#' at position 50: …lease/ -lmylib #̲else:win32:CONF…OUT_PWD/…/…/…/projects/mylib/debug/ -lmylib
#else:unix: LIBS += -L$$OUT_PWD/…/…/…/projects/mylib/ -lmylib
4.在*****.cpp中加入#include <GL/glut.h>,这样就可以使用glut中的函数了。
5.记得调用初始化函数后,才能使用。
glutInit(&argc, argv);