欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Win10系统从源码构建3D Slicer

程序员文章站 2024-03-24 11:42:22
...

本文链接

https://blog.csdn.net/fengtaoO08/article/details/101487421

1 前言

本文将在Win10系统上对3D Slicer(版本4.11.0 -2019-09-01) 源码进行构建,得到可执行文件。主要流程参考官方构建指南,部分细节有出入,仅供读者参考。

2 系统环境及预装软件

  • OS:Windows 10 x64
  • 预留足够磁盘空间(Debug版本至少需要预留45GB,Release版本至少预留10GB)
  • 保持网络通畅
  • CMake v3.14.4
  • Git v2.19.1
  • Qt v5.12.2 (需安装Qt ScriptQt Webengine组件)
  • Visual Studio Community 2019 v16.2.4 (安装使用C++的桌面开发工作负载,以及MSVC v140 -VS 2015 C++生成工具(v14.00)组件)

3 Slicer源码的获取与安装

在准备安装Slicer的目录(该路径不能包含空格及汉字)下通过Git Bash命令行运行以下命令

git clone git://github.com/Slicer/Slicer.git

然后Slicer文件夹将自动创建到当前目录。等待clone完成后,在过Git Bash命令行运行以下命令

cd Slicer
./Utilities/SetupForDevelopment.sh

4 配置与生成Slicer解决方案文件

从Windows开始菜单运行CMake (cmake-gui)

4.1 填写路径

  • Where is the source code对应处填写Slicer源码安装路径,或点击Browse Source...进行选择
  • Where to build the binaries对应处填写构建路径(需保证构建路径总长度不超过10个字符,且不包含空格及汉字,例如C:\D\S4R),或点击Browse Source...进行选择。注意,每次进行构建都应选择不同的路径,以避免混淆。

4.2 CMake变量

  • 点击Add Entry按钮添加CMake变量:Name为 Qt5_DIR,Type为PATH,Value为Qt5安装目录的一个路径,如C:\Qt\5.12.2\msvc2017_64\lib\cmake\Qt5,请查看Qt5安装目录并替换为你自己的路径。
  • (可选)以下是可以根据需求添加并配置的CMake变量及其说明:
    • SlicerApp_APPLICATION_NAME: Custom application name to be used, instead of default “Slicer”. The name is used in installation package name, window title bar, etc.
    • Slicer_DISCLAIMER_AT_STARTUP: String that is displayed to the user after first startup of Slicer after installation (disclaimer, welcome message, etc).
    • Slicer_DEFAULT_HOME_MODULE: Module name that is activated automatically on application start.
    • Slicer_DEFAULT_FAVORITE_MODULES: Modules that will be added to the toolbar by default for easy access. List contains module names, separated by space character.
    • Slicer_CLIMODULES_DISABLED: Built-in CLI modules that will be removed from the application. List contains module names, separated by semicolon character.
    • Slicer_QTLOADABLEMODULES_DISABLED: Built-in Qt loadable modules that will be removed from the application. List contains module names, separated by semicolon character.
    • Slicer_QTSCRIPTEDMODULES_DISABLED: Built-in scripted loadable modules that will be removed from the application. List contains module names, separated by semicolon character.
    • Slicer_USE_PYTHONQT_WITH_OPENSSL: enable/disable building the application with SSL support (ON/OFF)
    • Slicer_USE_SimpleITK: enable/disable SimpleITK support (ON/OFF)
    • Slicer_BUILD_SimpleFilters: enable/disable building SimpleFilters. Requires SimpleITK. (ON/OFF)
    • Slicer_BUILD_EMSegment: enable/disable building EM segmenter (ON/OFF)
    • Slicer_USE_PYTHONQT_WITH_TCL: TCL support (ON/OFF)
    • Slicer_EXTENSION_SOURCE_DIRS: Defines additional extensions that will be included in the application package as built-in modules. Full paths of extension source directories has to be specified, separated by semicolons.

4.3 配置

  • 点击Configure按钮
  • 在弹出的窗口中的Specify the generator for this project下拉菜单中选择Visual Studio 16 2019
  • Optional platform for generator下拉菜单中选择x64
  • Optional toolset to use (argument to -T)编辑框中输入v140
  • 点击Finish按钮,则CMake开始配置
  • 若出现下面错误表示未连接网络或网络不通畅,保持网络通畅后重新点击Configure按钮即可解决。
CMake Error at CMake/SlicerCheckCMakeHTTPS.cmake:25 (message):
  error: This CMake does not support the HTTPS protocol.  Ensure that CMake is compiled with CMAKE_USE_OPENSSL enabled.
Call Stack (most recent call first):
  CMake/SlicerCheckCMakeHTTPS.cmake:35 (slicer_check_cmake_https)
  SuperBuild.cmake:25 (include)
  CMakeLists.txt:675 (include)

4.3 生成解决方案文件

  • CMake显示Configuring done之后点击Generate按钮,则CMake开始生成解决方案文件

4.4 构建

  • CMake显示Generating done之后,点击Open Project按钮则会在Visual Studio 2019中打开生成的解决方案项目
  • 此时VS会弹出一个重定向项目的对话框,点击取消
  • 于VS顶部的工具栏中,找到解决方案配置下拉菜单,选择编译Debug版本还是Release版本
  • 点击VS顶部菜单栏生成按钮,在下拉菜单中选择生成解决方案,则VS开始进行构建
  • 在构建过程中VS会不断从网络上下载各种资源文件,因此请保持网络通畅(由于资源服务器往往不在国内,因此速度仍然可能很慢,甚至下载失败)。在网络通畅的情况下,也仍然需要构建若干个小时。若发现某个项目构建失败,应查看VS输出的日志,查找失败原因。通常来说,项目构建的失败大部分都是由于某些资源下载意外终止导致,解决方法就是重新为失败的项目生成解决方案。
  • 最终如果所有项目生成解决方案完成,VS输出窗口显示生成失败0个,则代表构建成功。

5 运行Slicer

构建完成后应该可以在构建目录下的Slicer-build文件夹中找到Slicer.exe,点击运行即可打开3D Slicer了。官方指南中还包含TEST SlicerPACKAGE Slicer的方法,以及一些在整个流程中可能遇到的错误及解决方法,读者可自行查阅。