Ubuntu20.04下QT5.12.12 + VTK8.2.0环境配置、代码测试及问题分析

0.系统环境+库环境

  • ubuntu20.04(如果你想使用Ubuntu22.04或22.10安装VTK8.2,则需降低CMake版本,如cmake3.16.3,或更改cmake文件)
  • qt5.12.12(需要声明的是,如果你想使用QT6,则建议安装VTK9以上版本,VTK8对QT6的支持并不好,对于初学者VTK9删去了QVTKWidget,其相关资料较少,学习难度较大,而VTK8不仅继续含有QVTKWidget,也有最新的支持方式,详细可参考这篇文章
  • vtk8.2.0(或从官网下载最新版本)

qt+vtk网上教程一大堆,然而,具体实现过程中我却遇到了诸多问题,我曾尝试在ubuntu22.04下编译qt6+vtk9.2,虽然能够正常编译和安装,但安装后发现QVTK库根本没有编译出来,ubuntu22.04对vtk8.2支持也并不友好,不仅在cmake版本上有所限制,更是对系统中一些库的依赖解决并不充分,因此,迫不得以,最终选择了Ubuntu20.04,但通过一些教程虽安装成功,不知是否是个例,因改动了libusb库导致系统无法正常开机进入桌面。经过多天尝试,终于有了一次成功经历,并在重装ubuntu下得到了验证,在此分享。

1.安装依赖环境

首先还是建议将系统各库进行更新

sudo apt update
sudo apt upgrade

安装依赖

sudo apt install -y build-essential cmake
sudo apt install -y qt5-default
sudo apt install -y cmake-qt-gui

这里,在ubuntu20.04下,系统自动选择的Cmake版本是3.16.3,可以正常使用。

2.QT安装

QT安装此处略过,网上教程较多,只说一下重点:
我的安装目录是/home/user/Software/QT5.12.12
安装组件选择了除Android以外的全部。
在这里插入图片描述
在安装结束后,可选择性地对系统QT环境进行配置,不配置也可以
具体配置方法:

sudo gedit ~/.bashrc

打开后在文件末尾添加下列内容:

export QTDIR=/home/zyr/Software/Qt5.12.12/5.12.12/gcc_64
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

最后,更新

source ~/.bashrc

3.VTK编译和安装

在安装vtk之前,要确保xt库的正常,可以输入以下代码

sudo apt install -y libxt-dev

将下载的vtk-8.2.0.tar.gz包提取,进入vtk-8.2.0文件夹,并在里面新建文件夹,命名build
使用cmake-gui,设置源码目录和输出目录,勾选Group和Adavanced,点击config,按下图设置
在这里插入图片描述在第一次configure后,设置CMAKE中,CMAKE_BUILD_TYPEReleaseBUILD里,确保BUILD_SHARED_LIBS被勾选,然后搜索QT,设置如下
在这里插入图片描述切忌不要勾选Module_vtkGUISupportQTWebkit,因为QTWebkit在QT5.5版本以后被QTWebEngine替代,QTWebkit被删除。
继续Configure。可能输出会继续出现红色,一定要将QT目录替换为自己安装的QT目录,一路Configure,直至红色消失,最终的设置如下图:
在这里插入图片描述最后点击Generate,生成文件。
关闭Cmake-gui界面,进入build文件夹,打开terminal,依次输入

make -j$(nproc)

等待编译成功

sudo make install

4.VTK资源导入QT Designer

在install后,系统不会自动将QVTK相关组建导入QT Creator,需要自行查找libQVTKWidgetPlugin.so文件,并将其复制入QT Designer的目录。在此,我的文件生成地址在/usr/local/plugins/designer,将其复制进QT目录。
在这里插入图片描述
在这里插入图片描述

5.代码测试

打开qt creator,在Projects页面打开现有工程
在这里插入图片描述选择vtk源码目录下的Examples文件,随机找一个QT例子进行演示
在这里插入图片描述

6.问题汇总

(1)Cmake错误
Cmake版本过高,可降低Cmake版本,或修改CMakeLists.txt 中cmake_minimum_required(VERSION 3.19.2 FATAL_ERROR),将其中version 改为自己的CMake版本

(2)VTKData 编译不过
将VTKData-7.1.1.zip / VTKlargeData-7.1.1.zip 解压到ExternalData/Objects/MD5/文件夹下

(3)VtkGUISupportQtOpenglCxxTests编译不过
将Qt5OpenGLd.lib 添加到依赖项即可。

(4)安装了支持库,cmake也没出错,但编译失败
可能系统安装的其他环境,如ros等更改了库的版本或导致出现多个同样的库,从而系统找不到对应的版本

持续更新中…

  • 11
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要在Ubuntu 20.04上安装Qt 5.9.9,可以按照以下步骤进行操作: 1. 首先,确保你的系统已经安装了Ubuntu 20.04,并且已经下载了Qt 5.9.9的安装包。你可以从Qt官方网站或其他可信的下载源获取安装包。 2. 将Qt安装包复制到Ubuntu系统中的一个目录中,可以选择一个你喜欢的位置。你可以使用终端命令或图形界面将安装包复制到目标目录。 3. 进入安装目录,这个目录是指你在第2步中选择的目录。你可以使用终端命令`cd`进入目录。 4. 在安装目录中运行Qt安装程序。你可以使用终端命令`sudo ./qt-installer.run`运行安装程序。如果需要系统权限的功能,比如操作串口,你可能需要使用`sudo`来运行安装程序。 5. 按照安装程序的指示进行安装。你可以选择安装的组件和选项,也可以接受默认设置。在安装过程中,你可以设置安装路径、选择需要的库和工具等。 6. 完成安装后,你可以通过终端命令`./qtcreator`启动Qt Creator,或者将Qt Creator加载到系统的环境变量中,这样你就可以直接在终端中运行`qtcreator`来启动它。 7. 创建一个新的工程,并按照需要进行设置,比如设置工程名称、选择编译套件、选择基础类等。 8. 进行编译。你可以点击Qt Creator界面左下角的锤子图标来开始编译工程。 9. 如果在编译过程中遇到问题,比如缺少openGL库,你可以根据错误提示进行分析和解决。在终端中输入`locate libGL`命令可以查找openGL库的位置,并根据需要进行配置。 总之,以上是在Ubuntu 20.04上安装Qt 5.9.9的大致步骤。根据你的具体需求和系统配置,可能会有一些细节上的差异,请根据实际情况进行操作。希望这些信息对你有所帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Ubuntu20.04 上搭建 QT5.9](https://blog.csdn.net/weixin_42955871/article/details/111881431)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Ubuntu 20.04 下载、安装、配置、使用 QT 5.9.0](https://download.csdn.net/download/weixin_38738506/14048904)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值