Ubuntu + Qt5 + VTK9环境配置+测试

Ubuntu + Qt5 + VTK9环境配置+测试


浪费了一整天的时间,尝试使用 Visual Stdio 编译VTK9.0,然后结合MFC开发。官方的文档提供的方法,换了几个版本的Cmake,照着网上各路大神的方法各种改,然而就是出错。应该是我电脑里的VS与VTK八字不合吧。于是换了Ubuntu18.04,同样是官方的方法,一次成功。。。。。论安装软件的坑,是永远也论不完的,所以就不要论了
以下是配置时的几点需要注意的,要以官方的方法为准!!!我之前在Ubuntu中折腾过几次,所以有些依赖的库可能已经有了,缺少库就直接安装就好,如果出错有大牛指点最好,没有就只能上网搜了。god bless you!!!
官方方法的连接:
https://www.vtk.org/Wiki/VTK/Configure_and_Build

VTK

最好用git clone的方式,不需要科学上网也是可以的。指令见官方链接!
VTK是基于opengl开发的(书上是这么写的),所以要装opengl!!!

sudo apt-get install libgl1-mesa-dev
sudo apt-get install libglu1-mesa-dev
sudo apt-get install freeglut3-dev

我安装的时候,出现了文件大小不符,无法下载的情况,解决方法就是换,换成主服务器的就好了,虽然速度慢了,装完可以再换回去。

安装Qt

下载相应的版本http://download.qt.io/archive/qt/
linux上有64位的,我就直接用了,昨天折腾一天,现在有现成的就直接用吧。图形安装,很友好。
装完之后需要在“工具”->“选项”->“构建和运行”进行设置,要指定GCC与G++的路径。(安装之前最好都把GCC装上)

cmake

官方的ccmake用起来不是很友好,也没必要花时间去搞,建议使用cmake-gui,图形的,和windows一样,使用如下命令安装
sudo apt install cmake-qt-gui
跳转到build的目录下,启动cmake-gui
sudo cmake-gui <VTK源码的绝对路径>
第一次configure之后需要(cmake上有个advance要打勾!)
将VTK_Group_Qt打钩
还有官方的方法里提到的几个选项也要注意
第二次configure之后
需要制定Qt相应模块的目录
点击configure发现没有红色的选项了
然后就可以点general
之后就是编译
sudo make
之后就是漫长的等待。。。。。。
结束后
sudo make install
至此VTK编译结束

测试例程

例程是官方的例子,直接copy。

1、新建Qt工程

目录结构如下
这里写图片描述

2、在pro文件中添加头文件和库路径

完整的pro如下,注意路径要改成自己的!!我这里的头文件放在/home/ieeeee/VTKInstall/vtk-9.0
动态库放在/home/ieeeee/VTKInstall/VTKso/
这里要强调添加动态库的时候的格式,比如添加libvtkChartsCore-9.0.so要写成-lvtkChartsCore-9.0,否则会报错collect2: error: ld returned 1 exit status

#-------------------------------------------------
#
# Project created by QtCreator 2018-07-01T19:32:43
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = hello
TEMPLATE = app

# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0


SOURCES += \
        main.cpp \
        mainwindow.cpp

HEADERS += \
        mainwindow.h

FORMS += \
        mainwindow.ui

INCLUDEPATH += /home/ieeeee/VTKInstall/vtk-9.0


#LIBS += -L/home/ieeeee/VTKInstall/VTKa/lib*
LIBS += -L/home/ieeeee
  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值