使用源码编译64位的3D Slicer(综述)

原创 2012年03月27日 17:23:44
    3D Slicer是一款开源的用于医学图像分析(主要是分割和配准)与可视化成像的软件。我们可以把自己插件加入到3D Slicer软件中来实现我们想要的功能,它向我们提供一个检测算法与改进算法的平台。官网上有windows,linux和Mac Os X三个版本安装包,但是要加入插件,必须自己使用源码编译这个平台。

    在2011年下半年3D Slicer的编译过程发生很大的变化,之前Slicer3.6版本编译时依赖一个叫getbuildtest.tcl的编译描述文件,windows系统只需要在cygwin中输入 ./Slicer3/Scripts/getbuildtest.tcl。虽然看似很简单只需要一条指令,但是在编译过程中却会有大量的错误出现,修改起来比较费劲。目前3D Slicer的版本是4.1,CMake新增的Super-Build功能,它向开发者提供一个跨平台的能够快速配置大量软件包的编译系统,这使得Slicer4的源码编译出错很少。

    下面将介绍编译64位的3D Slicer需要的准备工作:

1.下载Cygwin  http://cygwin.com/index.html

安装Cygwin时需要将下面的软件包curl、cvs、git、subversion、tcltk、unzip、zip一同选择并安装。

2.同步Slicer4的源码

打开Cygwin,输入如下命令:

cd I:

svn co http://svn.slicer.org/Slicer4/trunk Slicer4

然后在I盘下建立一个名为Slicer4-SuperBuild的文件夹。

3.安装Visual Studio 2008 x64

本人的电脑是Win7 64位系统,但是安装VS2008时软件默认仍然是不安装x64的编译器和工具,这时你需要选择完全安装或自定义安装勾选该选项。

4.编译64位QT

QT官网没有windows 64位系统的Qt library,只有32位的。在ftp://ftp.qt.nokia.com/qt/source/上下载qt-every-opensource-src-4.7.4.zip,qt-4.7.4能够与VS2008兼容,而且还支持编译最新版的64位QtCreator。

编译QT的过程如下:

源码解压后的文件改名为qt-4.7.4,放到I盘下。打开 所有程序 -> Microsoft Visual Studio 2008 -> Visual Studio Tools -> Visual Studio 2008 x64 Win4 命令提示 这个terminal,输入如下命令:

cd I:\qt-4.7.4

I:

configure.exe -platform win32-msvc2008 -debug  (需要等待一阵儿)

nmake -f makefile  (开始进行编译)

编译成功后,我们将I:\qt-4.7.4\bin添加到环境变量path中,以便CMake能自动检测到它。

5.下载Cmake2.8.7  http://www.cmake.org/cmake/resources/software.html

虽然只有32位的CMake,但是我们不需要去编译64位的CMake,32位CMake能够满足我们的要求。

本人将CMake安装在I:\CMake2.8。

 

    下面介绍编译64位的3D Slicer的步骤:

1.打开cgywin,输入

cd I:CMake2.8/bin

./cmake-gui.exe

2.上面的命令将打开CMake,我们如下图配置CMake

点击configure,选择Visual Studio 2008 9 Win64 generator。需要多次configure直到界面中没有红色的行出现,然后点击Generate.

3.用VS2008打开位于I:\Slicer4-SuperBuild下的Slicer.sln,然后点击 生成解决方案。这个阶段需要编译很长时间,具体所需时间跟所用电脑的配置有关。

注意,此时不能断网,Slicer4在编译过程需要下载很多软件的源码,如:ITK、VTK等。

如果生成成功后,再打开位于I:\Slicer4-SuperBuild\Slicer-build下的Slicer.sln,生成解决方案。

 

    点击I:\Slicer4-SuperBuild\Slicer-build下的Slicer.exe便能打开Slicer4.

 

注意:编译Qt4.7.4和Slicer4.1一共占用了I盘23G的空间,编译前要查看是否足够的空间。

相关文章推荐

3DSlicer6:编译、调试、规范化的开发

1.编译 Step1:CMake生成Slicer工程文件 使用Cmake生成Slicer的解决方案(Solution)包括两小点: 指定源代码目录:C:/myProjects...

使用源码编译3D Slicer3的一些注意事项

3D Slicer是一款开源的用于医学图像分析(主要是分割和配准)与可视化成像的软件。我们可以把自己插件加入到3D Slicer软件中来实现我们想要的功能,它向我们提供一个检测算法与改进算法的平台。官...
  • qquiop
  • qquiop
  • 2014年07月07日 16:01
  • 1659

3D Slicer编译 vs2008

3D Slicer的编译真是太艰难了,weile

关于Thin Plate Spline (薄板样条函数)

最近在看AAM(主动表现模型)时看到了,对于“Given corresponding points in two images, how do we warp one into the other?”...

【matlab】在程序运行结果中保存数据到txt文档

文件写入方法 问题提出:现在要保存程序的输出结果,包括运行时间,运行结果和中间变量。其中运行时间和运行结果只是一个数字,中间变量结果时一个n*n的矩阵和一个2*n的矩阵。想把这些量保存在txt文件中。...

3D Slicer及体绘制算法介绍

  • 2016年12月08日 10:44
  • 1.96MB
  • 下载

Unity 3D Android对dll加密和重编译mono源码进行解密

为防止Unity 3D的dll代码被反编译,可对其进行加密,然后在libmono.so中解密,重编译后代码便可正常运行。步骤如下: 1、对dll加密: 用VS建立控制台应用程序,将要加密的dll放...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用源码编译64位的3D Slicer(综述)
举报原因:
原因补充:

(最多只允许输入30个字)