使用的系统是Ubuntu 18.04.4 LTS (64-bit)。
下载源码
ITK源码下载地址:https://itk.org/download/
VTK源码下载地址:https://vtk.org/download/
CMake
以VTK为例,解压下载到的压缩包,新建一个文件夹来存放编译后的结果。如图,将VTK-8.1.2.zip解压到VTK-8.1.2,并新建文件夹VTK-build。
然后使用CMake来编译。个人感觉用gui比ccmake方便,因为可以直接搜索想要设置的选项,看起来比较清晰,不过也可以用ccmake,效果一样。
# 下载
sudo apt-get install cmake
sudo apt-get install cmake-gui
# 使用
cmake-gui
根据界面,分别填上source code文件夹和build文件夹,然后点击Configure。根据需求修改出现的选项,点击Advanced可以有更详细的选项。如果有出现报错(比如没装OpenGL)就按照提示解决一下,再重新Configure。全部完成后,选项中应该没有红色的项目,最后点击Generate,没有报错即可。
这里直接放上一些网上写过的常用选项:
- 勾选vtk_use_mfc: 很多人把 vtk 安装好了,却无法运行vtk 中与mfc混合编程的例子,提示错误都是少vtkmfc.lib,问题就出在这个选项,我们必须把它设置为 on
- 勾选vtk_use_qvtk,这是给QT用的vtk
- vtk_data_root: 目的是告诉cmake,vtk 需要的数据都在哪里
- cmake_install_prefix:这个是指定一个目录把.h .lib .dll等精华放在这里。
- build_examples:询问是否编译 vtk 中的例子
- build_shared_libs: 如果设置为off,就只会生成lib文件,用于开发肯定是够了。如果设置为on,将会多生成 dll 文件,这些dll需要拷到windows/system目录下。如果用静态库编程,即off时,应用程序可以独立运行,尺寸也比较大,如果用动态库编程,即on时,应用程序必须找到动态库才能运行,但尺寸可以做得比较小。建议选On, 我试过选OFF,所谓的静态编译,但之后新建一个项目时,还是会出现找不到文件的问题。
- vtk_use_parallel: 对于想用vtk 做并行计算的朋友,要把这个选上,对于只想学学vtk 的,保持默认 off
ITK也是同理。
网上写过的常用CMake选项:
- BUILD_EXAMPLE:默认是关闭的,若选中这个选项,则会编译ITK示例,同时ITK编译所 需的时间也较长,占用的磁盘空间也较 大。对于初学者来说,建议选中此项。
- BUILD_SHARED_LIBS:默认是关闭的,意味着ITK是静态编译,只生成lib文件;若选中此项,则动态编译,将会多生成dll文件。
- BUILD_TESTING:默认是打开的,表示会编译ITK的测试程序。ITK里每个类都会有对应的程序文件对该类进行测试,为了节省编译时 间,可以先关闭这个选项,后续如有需要,再打开此选项重新编译
- CMAKE_INSTALL_PREFIX:这个选项的值表示ITK的安装路径。该选项的值可不作修改,按默认值即可。在配置完VTK后生成的工程中 会有一个INSTALL项目,编译该项目后即会
- CMAKE_INSTALL_PREFIX所指定的路径中生成ITK相应的头 文件、lib文件和动态链接库dll文件。
- BUILD_DOCUMENTATION:默认是关闭的。若选中此选项,则会编译ITK帮助文档。
- Module_ITKVtkGlue:如果想ITK和VTK混合编程,则选中此选项。
这些选项的选择务必以实际使用需求为准。
Make
最后进入VTK-build文件夹,运行make。
make