Ubuntu下编译vtk(java版本)【超详细-带过程截图】

我不喜欢废话,直接开始;文章有点长,但是如果你是要编译的话,我相信你会耐心看完的!

参考链接(可跳过)
https://vtk.org/Wiki/VTK/Configure_and_Build适用于 VTK 6.0 及以上版本,camke官方推荐 2.8.8 或更高版本,如果是在window上还需要 Visual Studio(8 或更高版本),windows编译的这里不讨论。请参考下面的链接东灵工作室window下编译安装。

https://blog.csdn.net/weixin_42545664/article/details/116674424这位大兄弟写的具体配置没有给出,我试过成功编译了,C++的代码可以运行,但是Java的没有成功,因为在cmake配置的时候他没有给出配置,对于java的还是要稍微改动一下。

https://www.particleincell.com/2011/vtk-java-visualization/英文好的可以看看这个原版的,写的比较详细。

东灵工作室window下编译安装中文版的来了,这个比较权威全面,我在ubuntu下编译java版本也做了参考。

安装cmake-gui我的cmake-gui是这里找到的。

正式开始,如果你没有下载这些请下载,或者你有其他版本也可以尝试一下,我也是搜了一堆,我用的版本也和他们的不一致,

下载资源准备
VMware 我系统是windows,装了这个虚拟机才装ubuntu系统,这个是16版本的 我是14版本的,不过应该没有问题,我没试过。其他的辅助工具比如Xftp请自行下载安装使用了,主要是为了从虚拟机复制文件到主机比较方便。我这个版本的虚拟机复制文件到主机会卡死。

ubuntu-20.04.2.0-desktop-amd64.iso我使用的ubuntu版本

VTK-7.1.1.tar.gz 我编译的vtk版本

jdk-8u301-linux-x64.tar.gz我使用的jdk版本(手动配置环境变量使用),这里不建议在linux上用命令安装,会遇到坑。在最后编译到三分之一的时候会报错找不到jawt.h这个文件而终止编译。你不信可以试试,有可能是我安装有问题。

被骗了吧 这里才是真正开始的地方。

  1. 假设你已经装好了ubuntu系统并且可以使用,jdk环境已经装好了(jdk安装这里就不多说了,网上一搜一堆)。这里注意一下,配置好环境变量后立即生效 source /etc/profile 好像不管用,我是重启了ubuntu系统才可以的。
    在这里插入图片描述
    在这里插入图片描述

    说明: 我的截图已经是安装过后的。
    
  2. 安装编辑环境准备
    2.1安装编译器g++
    a先执行 sudo apt-cache search gcc*g++
    b再执行 sudo apt-get install g++
    在这里插入图片描述
    2.2安装cmake
    官方推荐wget的方式不建议使用,安装完成后没有ccmake的命令。更新到3.6.3也没有ccmake命令
    a 先执行 sudo apt-get install cmake
    在这里插入图片描述
    那大兄弟安装cmake-gui的方式(sudo apt-ge install cmake-mesa-gui)也不推荐,注意他的命令get 少个t ,而且总是提示“无法定位软件包”
    在这里插入图片描述
    这个无法定位软件包的问题我试过了很多,加入很多源,更新也没用,我一直以为是我系统问题。直到后面我找到了安装cmake-gui的命令:
    b再执行sudo apt-get install cmake-qt-gui
    在这里插入图片描述
    2.3安装OpenGL
    a先执行sudo apt-get install libgl1-mesa-dev
    在这里插入图片描述

    b再执行 sudo apt-get install libxt-dev
    在这里插入图片描述

  3. 将下载的VTK-7.1.1.tar.gz 解压到主目录(随便你放哪里)我的是放在主目录下/home/jmx/vtk/VTK-7.1.1
    在这里插入图片描述
    新建一个新文件夹用于存放编译后的东东。最好是和VTK-7.1.1同一级别,我的叫VTK-build(这个文件夹已经编译过了,后续用VTK-build2一样的)
    在这里插入图片描述
    然后打开刚刚安装好cmake(因为安装了cmake-gui)所以有cmake的图标
    在这里插入图片描述
    在这里插入图片描述
    选择无误后点击左下角的按钮Configure,弹出选择框,我的就选择默认就好。然后点击Finish
    在这里插入图片描述
    在这里插入图片描述
    编译完成后出现 Configuring done,报错关于OpenGL的可以不用理
    在这里插入图片描述
    勾选
    BUILD_SHARED_LIBS
    VTK_Group_Redering
    VTK_Group_StandAlone
    VTK_WARP_JAVA
    前3个一般都是默认勾选的,VTK_WARP_JAVA这个我们要记得勾上。
    再点一遍Configure
    配置完成后会再出现3个新的选项
    在这里插入图片描述
    把VTK_JAVA_INSTALL勾选上
    再点一遍Configure
    配置完成后点Generate,生成完成后到编译文件夹看见一个java文件夹
    在这里插入图片描述
    打开可以看到已经有一些vtk相关的jar生成了。
    在这里插入图片描述
    退回到VTK-build2目录下,打开终端执行 make
    在这里插入图片描述
    等待编译,过程有点长,根据你电脑性能来在这里插入图片描述
    题外话,再次说明,我之前用linux安装的jdk在这一步的时候,编译到35%左右就报错,找不到jawt.h,我对比了一下,如果安装包的确实有这个文件, 如果你是用linux安装的jdk,则找不到这个文件,原因我也不知道。
    在这里插入图片描述
    过程截图一下。
    在这里插入图片描述
    40多分钟终于结束了
    在这里插入图片描述
    恭喜你!成功编译linux_java_vkt! 编译出来的文件存放在 /home/jmx/vtk/VTK-build2/lib 这里。
    在这里插入图片描述

最后放一张demo的示例,demo在vtk源文件里有
/VTK-7.1.1/Examples/Tutorial/Step1/Java
在这里插入图片描述
引用方式:
创建maven工程
引入so文件
引入vtk.jar
在这里插入图片描述

将Cone.java 的
在这里插入图片描述
引用换成

static {
		if (!vtkNativeLibrary.LoadAllNativeLibraries()) {
			for (vtkNativeLibrary lib : vtkNativeLibrary.values()) {
				if (!lib.IsLoaded()) {
					System.out.println(lib.GetLibraryName() + " not loaded");
				}
			}
		}
		vtkNativeLibrary.DisableOutputWindow(null);
	}

最后右键运行
在这里插入图片描述
收官,感谢各位看官。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值