赞
踩
因为一个大项目需要,在QT界面利用occ做三维可视化的东西,所以需要配置。网上的配置攻略不是在VS下用MFC做,就是用VS+QT的插件,也有老哥用Qt Creator做,主要是下面两个:
occQt
出自occ方面的大神,eryar
多说一句,虽然是大佬,但是和蔼可亲,之前配置有问题,发邮件给大佬,大佬没多久就回复了,给大佬点赞。
Windows系统下QT+OpenCasCAD仿真开发
还有个这个老哥,目测研究的内容和我们教研室方向还挺像,有缘有缘,也是大佬。
但是,问题来了,按照上面两个老哥的攻略,我还是运行不了,让我十分苦恼。好在后来自己摸索出来了,主要问题是环境配置!!!环境配置!!!环境配置!!!
1、Windows 10 64位;
2、Qt 5.14.1 MSVC2017 64bit(扛不住,归根到底大恒相机C++接口不支持MINGW,我只能投入MSVC怀抱了,不过目测OCC也不支持?)
3、OPEN CASCADE 7.4(不多说,直接上最新版)
1、安装Visual Studio 2017
2、安装Qt 5.14.1与自带的Qt Creator 4.11.1
3、重头戏来了,官网下载DOWNLOAD OPEN CASCADE TECHNOLOGY 7.4.0
注意:直接安装版即可,官网在配置说明里面也说了,安装版直接支持vs2017,虽然是vc14,但实际上是vc141,也就是vc++ 2017,然后里面的第三方库啥的也自带,也不用编译啥的。
下载好了直接安装即可。
我安装在:
E:\OpenCASCADE-7.4.0-vc14-64
4、配置环境变量
环境变量十分关键,环境变量配置不好,程序编译成功,但是一运行就crash,让我十分苦恼。环境变量就是在path里面加目录:
比较多,该加的都加了,估计也有不该加的,参考我的安装路径,配置如下:
E:\OpenCASCADE-7.4.0-vc14-64\ffmpeg-3.3.4-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\freeimage-3.17.0-vc14-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\freetype-2.5.5-vc14-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\opencascade-7.4.0\win64\vc14\bin
E:\OpenCASCADE-7.4.0-vc14-64\qt5.11.2-vc14-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\rapidjson-1.1.0\bin
E:\OpenCASCADE-7.4.0-vc14-64\tbb_2017.0.100\bin\intel64\vc14
E:\OpenCASCADE-7.4.0-vc14-64\tbb_2017.0.100\bin\intel64\vc14_ui
E:\OpenCASCADE-7.4.0-vc14-64\tcltk-86-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\vtk-6.1.0-vc14-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\opencascade-7.4.0\win64\vc14\lib
E:\OpenCASCADE-7.4.0-vc14-64\opencascade-7.4.0\inc
5、去github下载eryar大佬的例程,网址就是上面提到的网址。大佬的例程下载下来,按照大佬的readme文件,把pro文件里面的CASROOT改成自己的安装路径后运行还是不行,会提示找不到头文件:
等于还是路径问题,然后我发现,大佬引用CASROOT的时候,加了括号:
INCLUDEPATH += \
$$(CASROOT)/inc
把括号去掉,就ok了,然后把pro文件里面所有CASROOT前后的括号全部去掉,搞定!
修改后的pro文件如下:
#------------------------------------------------- # # Project created by QtCreator 2013-08-18T15:52:09 # #------------------------------------------------- QT += core gui opengl greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TARGET = occQt TEMPLATE = app SOURCES += main.cpp \ occQt.cpp \ occView.cpp CONFIG += c++11 HEADERS += \ occQt.h \ occView.h FORMS += \ occQt.ui RESOURCES += \ occqt.qrc CASROOT = E:\OpenCASCADE-7.4.0-vc14-64\opencascade-7.4.0\ win32 { DEFINES += \ WNT INCLUDEPATH += \ $$CASROOT/inc win32-msvc2010 { compiler=vc10 } win32-msvc2012 { compiler=vc11 } win32-msvc2013 { compiler=vc12 } win32-msvc2015 { compiler=vc14 } win32-msvc { compiler=vc14 } # Determine 32 / 64 bit and debug / release build !contains(QMAKE_TARGET.arch, x86_64) { CONFIG(debug, debug|release) { message("Debug 32 build") LIBS += -L$$CASROOT/win32/$$compiler/lib } else { message("Release 32 build") LIBS += -L$$CASROOT/win32/$$compiler/lib } } else { CONFIG(debug, debug|release) { message("Debug 64 build") LIBS += -L$$CASROOT/win64/$$compiler/lib #message("$$CASROOT/win64/$$compiler/lib") } else { message("Release 64 build") LIBS += -L$$CASROOT/win64/$$compiler/lib } } } linux-g++ { INCLUDEPATH += \ /usr/local/include/opencascade LIBS += \ -L/usr/local/lib/ } LIBS += \ -lTKernel \ -lTKMath \ -lTKG3d \ -lTKBRep \ -lTKGeomBase\ -lTKGeomAlgo\ -lTKTopAlgo \ -lTKPrim \ -lTKBO \ -lTKBool \ -lTKOffset \ -lTKService \ -lTKV3d \ -lTKOpenGl \ -lTKFillet
终于成功了,泪奔!
虽然整个从下载OCC到配置的过程只有一两天,但是不停报错、崩溃真的好痛苦啊,再次感谢在网上发布教程的各位大佬,包括但不限于:
OPEN CASCADE
Windows系统下qt开发融合pylon,opencv,opencascade 等库的工程
Opencascade的安装
Windows系统下QT+OpenCasCAD仿真开发
Qt程序异常结束
Opencascad 7.0编译问题
eryar/occQt
最后即兴赋诗一首:
天若有情天亦老,人间正道是沧桑。
欢迎有相关配置问题的老哥评论,我们一同讨论。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。