编译环境
- Windows 10 64位
- VS2015 确保安装v140编译器和Win10 SDK
- CMake 3.12.0
- git,svn
- Qt 5.10.1, 安装MSVC2015_64版本,安装目录
D:\Qt\Qt5.10.1
编译目录
- 根目录:
D:\S
- 源代码目录
D:\S\S
- 编译debug目录
D:\S\BD
- 编译release目录
D:\S\BR
Slicer编译步骤
- 源代码
打开Git Bash工具,进入根目录D:\S
,拉取源代码
git clone https://git.coding.net/fitsir/Slicer.git S
修改代码
目录D:\S\S\Base\QTApp\qSlicerApplicationHelper.cxx
在文件开一头增加头文件#include <windows.h>
,不然总是报SetProcessDPIAware 找不到标识符
的错误。-
运行CMake生成工程
- 打开
cmake-gui
工具 -
Where is the souce code:
处选择D:\S\S
-
Where to build the binaries:
处选择D:\S\BD
,这里首先编译Debug版本 - 点击
Configure
,弹出的界面选择Visual Studio 14 2015 Win64
,并在下面选项中填写host=x64
。这是因为cmake默认host环境是32位,改后则默认host为64位。确定 - 确定qt版本,
Slicer_REQUIRED_QT_VERSION
改为5.10.1
,Qt5_DIR
处选择D:/Qt/Qt5.10.1/5.10.1/msvc2015_64/lib/cmake/Qt5
目录 - 取消
BUILD_TESTING
- 修改
Slicer_VTK_SMP_IMPLEMENTATION_TYPE
为Sequential
9. 取消Slicer_USE_PYTHONQT_WITH_OPENSSL
- 多次点击Configure,消除红色
- 特别注意,不要使用系统自带的python或vtk,slicer工程会自动下载特定的版本,如果系统安装过python2,也需要把
C:\Windows\python2.7.dll
删除 - 点击Generate
- 点击Open Project,选择Debug
- 时间较长,特别是需要下载依赖的phthon, vtk等源码并编译
- 生成成功后,会在
D:\S\BD\Slicer-build
下生成Slicer.exe
,双击即可运行。
- 打开
Module编译步骤
Slicer的Module可以是界面左边的面板,这里以SlicerWelcom这个Module为模板,自己编译Slicer Module
- 源码目录
D:\S\Modules
-
SlicerWelcom
文件夹为D:\S\S\Modules\Loadable\SlicerWelcome
,将其中所有文件复制至D:\S\Modules\SlicerTest
,其中所有的Welcom
改为Test
, 所有WELCOM
改为TEST
- 建立目录
D:\S\Modules\SlicerTest\build
,Git Bash
中进入该目录 - 运行
cmake -G "Visual Studio 14 2015 Win64" \
-Thost=x64 \
-DSlicer_DIR:PATH=/d/S/B/Slicer-build \
-DCMAKE_INSTALL_PREFIX=D:/S/BD/Slicer-build \
../
会生成VS2015工程,在目录中双击Test.sln
,打开工程,右键ALL_BUILD
生成,很快编译成功。右键INSTALL
生成。
-
运行
Slicer.exe
,在Moduels下拉菜单中就出现了Slicer Test
模块,选择即可出现。
slicer.png 增加Qt模块。因为模块中需要增加串口,需要
Qt5::SerialPort
模块,故修改Module
的CMakeLists.txt
文件,增加
set(Qt5_DIR "D:\\Qt\\Qt5.10.1\\5.10.1\\msvc2015_64\\lib\\cmake\\Qt5")
find_package(Qt5 REQUIRED COMPONENTS SerialPort)
set(MODULE_TARGET_LIBRARIES
Qt5::SerialPort
)
在VS中重新生成即可