編譯環(huán)境
- 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工具叉抡,進(jìn)入根目錄D:\S
诬烹,拉取源代碼
git clone https://git.coding.net/fitsir/Slicer.git S
修改代碼
目錄D:\S\S\Base\QTApp\qSlicerApplicationHelper.cxx
在文件開一頭增加頭文件#include <windows.h>
找御,不然總是報(bào)SetProcessDPIAware 找不到標(biāo)識(shí)符
的錯(cuò)誤渠牲。-
運(yùn)行CMake生成工程
- 打開
cmake-gui
工具 -
Where is the souce code:
處選擇D:\S\S
-
Where to build the binaries:
處選擇D:\S\BD
,這里首先編譯Debug版本 - 點(diǎn)擊
Configure
,彈出的界面選擇Visual Studio 14 2015 Win64
尤泽,并在下面選項(xiàng)中填寫host=x64
。這是因?yàn)閏make默認(rèn)host環(huán)境是32位规脸,改后則默認(rèn)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
- 多次點(diǎn)擊Configure莫鸭,消除紅色
- 特別注意闹丐,不要使用系統(tǒng)自帶的python或vtk,slicer工程會(huì)自動(dòng)下載特定的版本被因,如果系統(tǒng)安裝過python2卿拴,也需要把
C:\Windows\python2.7.dll
刪除 - 點(diǎn)擊Generate
- 點(diǎn)擊Open Project衫仑,選擇Debug
- 時(shí)間較長(zhǎng),特別是需要下載依賴的phthon堕花, vtk等源碼并編譯
- 生成成功后文狱,會(huì)在
D:\S\BD\Slicer-build
下生成Slicer.exe
,雙擊即可運(yùn)行缘挽。
- 打開
Module編譯步驟
Slicer的Module可以是界面左邊的面板瞄崇,這里以SlicerWelcom這個(gè)Module為模板,自己編譯Slicer Module
- 源碼目錄
D:\S\Modules
-
SlicerWelcom
文件夾為D:\S\S\Modules\Loadable\SlicerWelcome
壕曼,將其中所有文件復(fù)制至D:\S\Modules\SlicerTest
,其中所有的Welcom
改為Test
苏研, 所有WELCOM
改為TEST
- 建立目錄
D:\S\Modules\SlicerTest\build
,Git Bash
中進(jìn)入該目錄 - 運(yùn)行
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 \
../
會(huì)生成VS2015工程,在目錄中雙擊Test.sln
,打開工程窝稿,右鍵ALL_BUILD
生成楣富,很快編譯成功。右鍵INSTALL
生成伴榔。
-
運(yùn)行
Slicer.exe
纹蝴,在Moduels下拉菜單中就出現(xiàn)了Slicer Test
模塊,選擇即可出現(xiàn)踪少。
slicer.png 增加Qt模塊塘安。因?yàn)槟K中需要增加串口,需要
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中重新生成即可