Ubuntu20.04上,VTK9.3在QT5上的环境配置与开发测试
- 1 背景介绍
- 2 VTK9.3的编译安装
- 2.1 安装ccmake 和 VTK 的依赖项:
- 2.2 建立VTK编译文件夹并下载
- 2.3 cmake配置VTK9.3的编译环境
- 2.4 make编译安装VTK9.3
- 2.5 测试VTK安装是否成功
- 3 基于qmake的QT5的VTK9.3开发
1 背景介绍
项目需要,需要在Ubuntu上,基于VTK进行QT界面的开发,其中,VTK的版本为9.3,QT具体为5.12.0。然而,现有大部分为基于VTK8.2的QT上位机的界面开发,关于VTK9.3的环境配置与使用方法很少,VTK9.3在VTK8.2上的改动又很多,无法基于VTK8.2的教程复线VTK9.3,因此,这里记录一下环境配置与测试开发过程,以供后续参考。
2 VTK9.3的编译安装
这里,不再详细介绍QT的安装了,这个网上教程非常多,因此,重点仍在VTK9.3的编译安装上。首先,提供VTK9.3的官方编译安装教程,链接如下。这里,我们参考较为简单的安装编译教程,主要步骤如下:
2.1 安装ccmake 和 VTK 的依赖项:
sudo apt install build-essential cmake cmake-curses-gui \
mesa-common-dev mesa-utils freeglut3-dev
上述为参考官方提供的教程,事实上有些依赖与库可能在后续安装是多余的,
2.2 建立VTK编译文件夹并下载
mkdir -p ~/vtk
git clone --recursive https://gitlab.kitware.com/vtk/vtk.git ~/vtk/source
2.3 cmake配置VTK9.3的编译环境
cd vtk
mkdir build
cd build
cmake-gui
上述命令下,将打开cmake的UI界面,配置源文件及生成文件路径,并设置generate为Unix Makefiles,具体如下图所示:
在完成第一轮configure后,会产生界面如下图所示,其中,需要修改部分配置,主要包括:
- BUILD_SHARED_LIBS:True;
- CMAKE_BUILD_TYPE:Release;
- CMAKE_INSTALL_PREFIX:/usr/local;
- VTK_GROUP_ENABLE_QT:Yes;
修改完成后,点击configure,进行第一次configure,结果如下图所示:
这里,只需修改VTK_QT_VERSION,将其调整为5即可,即默认使用QT5版本。完成后,点击configure,configure成功后,再点击Generate,至此,完成VTK9.3的编译环境的配置。
2.4 make编译安装VTK9.3
在上述步骤完成之后,即可开始编译安装VTK9.3。运行命令如下:
sudo make -j8
sudo make install
至此,即完成Ubuntu20.04上,VTK9.3的安装。
2.5 测试VTK安装是否成功
参考官网上,VTK9.3的QT实例,即可验证VTK9.3是否安装成功,参考链接如下。由于该页面有详细使用教程,这里不再赘述。
3 基于qmake的QT5的VTK9.3开发
由于官方示例中,使用cmake进行环境配置,但是我使用qmake配置,因此,这里补充说明以下,如何通过qmake,完成QT上的VTK9.3的环境配置与开发。
首先,在控件栏选择添加OpenGL Widget,然后,选择该控件,右击并选择提升为,在提升的类名称中输入:QVTKOpenGLNativeWidget;头文件为QVTKOpenGLNativeWidget.h,选择全局,并点击提升。
完成对VTK控件的添加后,在QT的项目配置文件xxxx.pro中,添加头文件与依赖库路径,如下所示:
INCLUDEPATH += $$PWD/../../../../../usr/local/include/vtk-9.3/
LIBS += /usr/local/lib/libvtk*-9.3.so
至此,即完成了QT上的VTK环境的基本配置功能,即可开始项目的具体开发工作。在项目开发过程中,推荐参考官网示例,进行进一步的开发工作,官方示例教程与API参考链接如下。关于项目的测试程序,如有需要,请在评论区提供邮箱。