<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.slicer.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Imphead</id>
	<title>Slicer Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.slicer.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Imphead"/>
	<link rel="alternate" type="text/html" href="https://www.slicer.org/wiki/Special:Contributions/Imphead"/>
	<updated>2026-05-05T01:00:18Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.33.0</generator>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/VS2012&amp;diff=33490</id>
		<title>Documentation/Labs/VS2012</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/VS2012&amp;diff=33490"/>
		<updated>2013-06-21T12:36:15Z</updated>

		<summary type="html">&lt;p&gt;Imphead: First experiences with building Slicer under VS2012&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* With VS2012, I've compiled Slicer 4 in a 64bit build as per 6/20/2013 with patched Qt (see [http://www.slicer.org/slicerWiki/index.php/Documentation/Labs/Qt484]). It doesn't run: crashes after splash screen is shown. Mini dump file said something about unauthorized virtual pointer, see below.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Dump Summary&lt;br /&gt;
------------&lt;br /&gt;
Dump File:	WERA828.tmp.mdmp : C:\Users\nils\AppData\Local\Temp\WERA828.tmp.mdmp&lt;br /&gt;
Last Write Time:	6/21/2013 8:22:05 AM&lt;br /&gt;
Process Name:	SlicerApp-real.exe : K:\SlicerWin64\Slicer-build\bin\Debug\SlicerApp-real.exe&lt;br /&gt;
Process Architecture:	x64&lt;br /&gt;
Exception Code:	0xC0000005&lt;br /&gt;
Exception Information:	The thread tried to read from or write to a virtual address for which it does not have the appropriate access.&lt;br /&gt;
Heap Information:	Not Present&lt;br /&gt;
&lt;br /&gt;
System Information&lt;br /&gt;
------------------&lt;br /&gt;
OS Version:	6.1.7601&lt;br /&gt;
CLR Version(s):	&lt;br /&gt;
&lt;br /&gt;
Modules&lt;br /&gt;
-------&lt;br /&gt;
Module Name	Module Path	Module Version&lt;br /&gt;
-----------	-----------	--------------&lt;br /&gt;
SlicerApp-real.exe	K:\SlicerWin64\Slicer-build\bin\Debug\SlicerApp-real.exe	0.0.0.0&lt;br /&gt;
ntdll.dll	C:\Windows\System32\ntdll.dll	6.1.7601.17725&lt;br /&gt;
kernel32.dll	C:\Windows\System32\kernel32.dll	6.1.7601.18015&lt;br /&gt;
KERNELBASE.dll	C:\Windows\System32\KERNELBASE.dll	6.1.7601.18015&lt;br /&gt;
qSlicerApp.dll	K:\SlicerWin64\Slicer-build\bin\Debug\qSlicerApp.dll	0.0.0.0&lt;br /&gt;
qSlicerBaseQTCLI.dll	K:\SlicerWin64\Slicer-build\bin\Debug\qSlicerBaseQTCLI.dll	0.0.0.0&lt;br /&gt;
QtGui4.dll	C:\QtHacked\qt\bin\QtGui4.dll	4.8.5.0&lt;br /&gt;
gdi32.dll	C:\Windows\System32\gdi32.dll	6.1.7601.17514&lt;br /&gt;
user32.dll	C:\Windows\System32\user32.dll	6.1.7601.17514&lt;br /&gt;
lpk.dll	C:\Windows\System32\lpk.dll	6.1.7600.16385&lt;br /&gt;
usp10.dll	C:\Windows\System32\usp10.dll	1.626.7601.18009&lt;br /&gt;
msvcrt.dll	C:\Windows\System32\msvcrt.dll	7.0.7601.17744&lt;br /&gt;
comdlg32.dll	C:\Windows\System32\comdlg32.dll	6.1.7601.17514&lt;br /&gt;
shlwapi.dll	C:\Windows\System32\shlwapi.dll	6.1.7601.17514&lt;br /&gt;
comctl32.dll	C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7601.17514_none_a4d6a923711520a9\comctl32.dll	5.82.7601.17514&lt;br /&gt;
advapi32.dll	C:\Windows\System32\advapi32.dll	6.1.7600.16385&lt;br /&gt;
sechost.dll	C:\Windows\System32\sechost.dll	6.1.7600.16385&lt;br /&gt;
rpcrt4.dll	C:\Windows\System32\rpcrt4.dll	6.1.7601.17514&lt;br /&gt;
shell32.dll	C:\Windows\System32\shell32.dll	6.1.7601.18103&lt;br /&gt;
oleaut32.dll	C:\Windows\System32\oleaut32.dll	6.1.7601.17676&lt;br /&gt;
ole32.dll	C:\Windows\System32\ole32.dll	6.1.7601.17514&lt;br /&gt;
imm32.dll	C:\Windows\System32\imm32.dll	6.1.7600.16385&lt;br /&gt;
msctf.dll	C:\Windows\System32\msctf.dll	6.1.7600.16385&lt;br /&gt;
winmm.dll	C:\Windows\System32\winmm.dll	6.1.7600.16385&lt;br /&gt;
winspool.drv	C:\Windows\System32\winspool.drv	6.1.7601.17514&lt;br /&gt;
QtCore4.dll	C:\QtHacked\qt\bin\QtCore4.dll	4.8.5.0&lt;br /&gt;
ws2_32.dll	C:\Windows\System32\ws2_32.dll	6.1.7601.17514&lt;br /&gt;
nsi.dll	C:\Windows\System32\nsi.dll	6.1.7600.16385&lt;br /&gt;
msvcp110.dll	C:\Windows\System32\msvcp110.dll	11.0.51106.1&lt;br /&gt;
msvcr110.dll	C:\Windows\System32\msvcr110.dll	11.0.51106.1&lt;br /&gt;
QtTesting.dll	K:\SlicerWin64\CTK-build\QtTesting-build\Debug\QtTesting.dll	0.0.0.0&lt;br /&gt;
MSVCP110D.dll	C:\Windows\System32\MSVCP110D.dll	11.0.51106.1&lt;br /&gt;
MSVCR110D.dll	C:\Windows\System32\MSVCR110D.dll	11.0.51106.1&lt;br /&gt;
vtkCommon.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkCommon.dll	0.0.0.0&lt;br /&gt;
vtksys.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtksys.dll	0.0.0.0&lt;br /&gt;
wsock32.dll	C:\Windows\System32\wsock32.dll	6.1.7600.16385&lt;br /&gt;
qSlicerBaseQTCore.dll	K:\SlicerWin64\Slicer-build\bin\Debug\qSlicerBaseQTCore.dll	0.0.0.0&lt;br /&gt;
QtNetwork4.dll	C:\QtHacked\qt\bin\QtNetwork4.dll	4.8.5.0&lt;br /&gt;
vtkFiltering.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkFiltering.dll	0.0.0.0&lt;br /&gt;
vtkPythonCore.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkPythonCore.dll	0.0.0.0&lt;br /&gt;
python27.dll	K:\SlicerWin64\Slicer-build\bin\Debug\python27.dll	0.0.0.0&lt;br /&gt;
cabinet.dll	C:\Windows\System32\cabinet.dll	6.1.7601.17514&lt;br /&gt;
msi.dll	C:\Windows\System32\msi.dll	5.0.7601.17807&lt;br /&gt;
SlicerBaseLogic.dll	K:\SlicerWin64\Slicer-build\bin\Debug\SlicerBaseLogic.dll	0.0.0.0&lt;br /&gt;
MRMLLogic.dll	K:\SlicerWin64\Slicer-build\bin\Debug\MRMLLogic.dll	0.0.0.0&lt;br /&gt;
MRMLCore.dll	K:\SlicerWin64\Slicer-build\bin\Debug\MRMLCore.dll	0.0.0.0&lt;br /&gt;
vtkITK.dll	K:\SlicerWin64\Slicer-build\bin\Debug\vtkITK.dll	0.0.0.0&lt;br /&gt;
ITKCommon-4.4.dll	K:\SlicerWin64\ITKv4-build\bin\Debug\ITKCommon-4.4.dll	0.0.0.0&lt;br /&gt;
vtkImaging.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkImaging.dll	0.0.0.0&lt;br /&gt;
vtkGraphics.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkGraphics.dll	0.0.0.0&lt;br /&gt;
vtkverdict.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkverdict.dll	0.0.0.0&lt;br /&gt;
vtkHybrid.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkHybrid.dll	0.0.0.0&lt;br /&gt;
vtkRendering.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkRendering.dll	0.0.0.0&lt;br /&gt;
vtkIO.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkIO.dll	0.0.0.0&lt;br /&gt;
vtkDICOMParser.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkDICOMParser.dll	0.0.0.0&lt;br /&gt;
vtkNetCDF.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkNetCDF.dll	0.0.0.0&lt;br /&gt;
vtkhdf5.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkhdf5.dll	0.0.0.0&lt;br /&gt;
vtkhdf5_hl.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkhdf5_hl.dll	0.0.0.0&lt;br /&gt;
vtkNetCDF_cxx.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkNetCDF_cxx.dll	0.0.0.0&lt;br /&gt;
LSDyna.dll	K:\SlicerWin64\VTK-build\bin\Debug\LSDyna.dll	0.0.0.0&lt;br /&gt;
vtkmetaio.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkmetaio.dll	0.0.0.0&lt;br /&gt;
vtkpng.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkpng.dll	0.0.0.0&lt;br /&gt;
vtkjpeg.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkjpeg.dll	0.0.0.0&lt;br /&gt;
vtktiff.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtktiff.dll	0.0.0.0&lt;br /&gt;
vtkexpat.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkexpat.dll	0.0.0.0&lt;br /&gt;
avifil32.dll	C:\Windows\System32\avifil32.dll	6.1.7600.16385&lt;br /&gt;
msacm32.dll	C:\Windows\System32\msacm32.dll	6.1.7600.16385&lt;br /&gt;
msvfw32.dll	C:\Windows\System32\msvfw32.dll	6.1.7600.16385&lt;br /&gt;
vtkftgl.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkftgl.dll	0.0.0.0&lt;br /&gt;
opengl32.dll	C:\Windows\System32\opengl32.dll	6.1.7600.16385&lt;br /&gt;
glu32.dll	C:\Windows\System32\glu32.dll	6.1.7600.16385&lt;br /&gt;
ddraw.dll	C:\Windows\System32\ddraw.dll	6.1.7600.16385&lt;br /&gt;
dciman32.dll	C:\Windows\System32\dciman32.dll	6.1.7600.16385&lt;br /&gt;
setupapi.dll	C:\Windows\System32\setupapi.dll	6.1.7601.17514&lt;br /&gt;
cfgmgr32.dll	C:\Windows\System32\cfgmgr32.dll	6.1.7601.17514&lt;br /&gt;
devobj.dll	C:\Windows\System32\devobj.dll	6.1.7600.16385&lt;br /&gt;
dwmapi.dll	C:\Windows\System32\dwmapi.dll	6.1.7600.16385&lt;br /&gt;
vtkfreetype.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkfreetype.dll	0.0.0.0&lt;br /&gt;
vtkParallel.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkParallel.dll	0.0.0.0&lt;br /&gt;
VPIC.dll	K:\SlicerWin64\VTK-build\bin\Debug\VPIC.dll	0.0.0.0&lt;br /&gt;
Cosmo.dll	K:\SlicerWin64\VTK-build\bin\Debug\Cosmo.dll	0.0.0.0&lt;br /&gt;
vtkexoIIc.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkexoIIc.dll	0.0.0.0&lt;br /&gt;
avicap32.dll	C:\Windows\System32\avicap32.dll	6.1.7600.16385&lt;br /&gt;
version.dll	C:\Windows\System32\version.dll	6.1.7600.16385&lt;br /&gt;
vtkInfovis.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkInfovis.dll	0.0.0.0&lt;br /&gt;
vtklibxml2.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtklibxml2.dll	0.0.0.0&lt;br /&gt;
vtkalglib.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkalglib.dll	0.0.0.0&lt;br /&gt;
FreeSurfer.dll	K:\SlicerWin64\Slicer-build\bin\Debug\FreeSurfer.dll	0.0.0.0&lt;br /&gt;
vtkTeem.dll	K:\SlicerWin64\Slicer-build\bin\Debug\vtkTeem.dll	0.0.0.0&lt;br /&gt;
teem.dll	K:\SlicerWin64\teem-build\bin\Debug\teem.dll	0.0.0.0&lt;br /&gt;
RemoteIO.dll	K:\SlicerWin64\Slicer-build\bin\Debug\RemoteIO.dll	0.0.0.0&lt;br /&gt;
archive.dll	K:\SlicerWin64\LibArchive-install\bin\archive.dll	0.0.0.0&lt;br /&gt;
MRMLCLI.dll	K:\SlicerWin64\Slicer-build\bin\Debug\MRMLCLI.dll	0.0.0.0&lt;br /&gt;
ModuleDescriptionParser.dll	K:\SlicerWin64\SlicerExecutionModel-build\ModuleDescriptionParser\bin\Debug\ModuleDescriptionParser.dll	0.0.0.0&lt;br /&gt;
MRMLDisplayableManager.dll	K:\SlicerWin64\Slicer-build\bin\Debug\MRMLDisplayableManager.dll	0.0.0.0&lt;br /&gt;
vtkWidgets.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkWidgets.dll	0.0.0.0&lt;br /&gt;
vtkVolumeRendering.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkVolumeRendering.dll	0.0.0.0&lt;br /&gt;
CTKCore.dll	K:\SlicerWin64\CTK-build\CTK-build\bin\Debug\CTKCore.dll	0.0.0.0&lt;br /&gt;
dbghelp.dll	C:\Windows\System32\dbghelp.dll	6.1.7601.17514&lt;br /&gt;
CTKImageProcessingITKCore.dll	K:\SlicerWin64\CTK-build\CTK-build\bin\Debug\CTKImageProcessingITKCore.dll	0.0.0.0&lt;br /&gt;
CTKVisualizationVTKCore.dll	K:\SlicerWin64\CTK-build\CTK-build\bin\Debug\CTKVisualizationVTKCore.dll	0.0.0.0&lt;br /&gt;
PythonQt.dll	K:\SlicerWin64\CTK-build\PythonQt-build\Debug\PythonQt.dll	0.0.0.0&lt;br /&gt;
QtWebKit4.dll	C:\QtHacked\qt\bin\QtWebKit4.dll	4.9.4.0&lt;br /&gt;
QtXml4.dll	C:\QtHacked\qt\bin\QtXml4.dll	4.8.5.0&lt;br /&gt;
CTKScriptingPythonCore.dll	K:\SlicerWin64\CTK-build\CTK-build\bin\Debug\CTKScriptingPythonCore.dll	0.0.0.0&lt;br /&gt;
QtScript4.dll	C:\QtHacked\qt\bin\QtScript4.dll	4.8.5.0&lt;br /&gt;
qSlicerBaseQTGUI.dll	K:\SlicerWin64\Slicer-build\bin\Debug\qSlicerBaseQTGUI.dll	0.0.0.0&lt;br /&gt;
qMRMLWidgets.dll	K:\SlicerWin64\Slicer-build\bin\Debug\qMRMLWidgets.dll	0.0.0.0&lt;br /&gt;
CTKWidgets.dll	K:\SlicerWin64\CTK-build\CTK-build\bin\Debug\CTKWidgets.dll	0.0.0.0&lt;br /&gt;
QtOpenGL4.dll	C:\QtHacked\qt\bin\QtOpenGL4.dll	4.8.5.0&lt;br /&gt;
CTKVisualizationVTKWidgets.dll	K:\SlicerWin64\CTK-build\CTK-build\bin\Debug\CTKVisualizationVTKWidgets.dll	0.0.0.0&lt;br /&gt;
vtkCharts.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkCharts.dll	0.0.0.0&lt;br /&gt;
vtkViews.dll	K:\SlicerWin64\VTK-build\bin\Debug\vtkViews.dll	0.0.0.0&lt;br /&gt;
QVTK.dll	K:\SlicerWin64\VTK-build\bin\Debug\QVTK.dll	0.0.0.0&lt;br /&gt;
QtSql4.dll	C:\QtHacked\qt\bin\QtSql4.dll	4.8.5.0&lt;br /&gt;
CTKScriptingPythonWidgets.dll	K:\SlicerWin64\CTK-build\CTK-build\bin\Debug\CTKScriptingPythonWidgets.dll	0.0.0.0&lt;br /&gt;
CTKQtTesting.dll	K:\SlicerWin64\CTK-build\CTK-build\bin\Debug\CTKQtTesting.dll	0.0.0.0&lt;br /&gt;
QtXmlPatterns4.dll	C:\QtHacked\qt\bin\QtXmlPatterns4.dll	4.8.5.0&lt;br /&gt;
qSlicerBaseQTApp.dll	K:\SlicerWin64\Slicer-build\bin\Debug\qSlicerBaseQTApp.dll	0.0.0.0&lt;br /&gt;
qSlicerModulesCore.dll	K:\SlicerWin64\Slicer-build\bin\Debug\qSlicerModulesCore.dll	0.0.0.0&lt;br /&gt;
ITKFactoryRegistration.dll	K:\SlicerWin64\Slicer-build\bin\Debug\ITKFactoryRegistration.dll	0.0.0.0&lt;br /&gt;
psapi.dll	C:\Windows\System32\psapi.dll	6.1.7600.16385&lt;br /&gt;
apphelp.dll	C:\Windows\System32\apphelp.dll	6.1.7601.17514&lt;br /&gt;
AcXtrnal.dll	C:\Windows\AppPatch\AppPatch64\AcXtrnal.dll	6.1.7601.18128&lt;br /&gt;
uxtheme.dll	C:\Windows\System32\uxtheme.dll	6.1.7600.16385&lt;br /&gt;
tiptsf.dll	C:\Program Files\Common Files\microsoft shared\ink\tiptsf.dll	6.1.7601.17514&lt;br /&gt;
CRYPTBASE.dll	C:\Windows\System32\CRYPTBASE.dll	6.1.7600.16385&lt;br /&gt;
WinTab32.dll	C:\Windows\System32\WinTab32.dll	5.3.2011.1014&lt;br /&gt;
hid.dll	C:\Windows\System32\hid.dll	6.1.7600.16385&lt;br /&gt;
MenuWnd.dll	C:\Windows\System32\MenuWnd.dll	2.0.2011.1011&lt;br /&gt;
userenv.dll	C:\Windows\System32\userenv.dll	6.1.7601.17514&lt;br /&gt;
profapi.dll	C:\Windows\System32\profapi.dll	6.1.7600.16385&lt;br /&gt;
MGHIOPlugin.dll	K:\SlicerWin64\Slicer-build\lib\Slicer-4.2\ITKFactories\Debug\MGHIOPlugin.dll	0.0.0.0&lt;br /&gt;
MGHIO.dll	K:\SlicerWin64\Slicer-build\bin\Debug\MGHIO.dll	0.0.0.0&lt;br /&gt;
MRMLIDIOPlugin.dll	K:\SlicerWin64\Slicer-build\lib\Slicer-4.2\ITKFactories\Debug\MRMLIDIOPlugin.dll	0.0.0.0&lt;br /&gt;
MRMLIDIO.dll	K:\SlicerWin64\Slicer-build\bin\Debug\MRMLIDIO.dll	0.0.0.0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* When I tried to include SimpleITK the linking step that produces SimpleITK_PYTHON.dir\Debug\SimpleITKPYTHON_wrap.obj took &amp;gt; 1 hour and I killed the linker. Perhaps it just takes a very long time.&lt;br /&gt;
&lt;br /&gt;
* I was unsuccessful in running with debugger as per  [http://www.slicer.org/slicerWiki/index.php/Documentation/Nightly/Developers/Tutorials/Debug_Instructions#Windows instructions]: it seems that &amp;lt;code&amp;gt;Slicer.exe --VisualStudio Slicer.sln /out buildlog.txt /build&amp;lt;/code&amp;gt;&lt;br /&gt;
contains flags that are not recognized (/out and /build) even when properly quoted in mingw (git bash) shell (doubling the forward slashes). The main problem is that VS doesn't start up!&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/VS2012&amp;diff=33488</id>
		<title>Documentation/Labs/VS2012</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/VS2012&amp;diff=33488"/>
		<updated>2013-06-21T12:15:26Z</updated>

		<summary type="html">&lt;p&gt;Imphead: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* With VS2012, I've compiled Slicer 4 in a 64bit build as per 6/20/2013 with patched Qt (see [http://www.slicer.org/slicerWiki/index.php/Documentation/Labs/Qt484]). It doesn't run: crashes after splash screen is shown. Mini dump file said something about unauthorized virtual pointer. I was unsuccessful in running with debugger. (Nils)&lt;br /&gt;
* When I tried to include SimpleITK the linking step that produces SimpleITK_PYTHON.dir\Debug\SimpleITKPYTHON_wrap.obj took &amp;gt; 1 hour and I killed the linker. Perhaps it just takes a very long time. (Nils)&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33487</id>
		<title>Documentation/Labs/Qt484</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33487"/>
		<updated>2013-06-21T12:05:27Z</updated>

		<summary type="html">&lt;p&gt;Imphead: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* To compile Qt with VS 2012 (VS 11) for 64 bit:&lt;br /&gt;
&lt;br /&gt;
** 4.8.4 does not compile under VS 2012 but it compiles with a patch (see below). &lt;br /&gt;
&lt;br /&gt;
** Note that if you compile something greater than 4.8.4, you'd need to change &amp;lt;code&amp;gt;set(Slicer_EXPERIMENTAL_QT_VERSION &amp;quot;4.8.4&amp;quot;)&amp;lt;/code&amp;gt; in Slicer's CMakeLists.txt.&lt;br /&gt;
&lt;br /&gt;
** Install perl (I used [http://www.activestate.com/activeperl/downloads] and choose 64 bit version)&lt;br /&gt;
&lt;br /&gt;
** Build/install in say &amp;lt;code&amp;gt;C:\QtHacked&amp;lt;/code&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
** Cd into this directory and git clone git://gitorious.org/qt/qt (this gives a pre-release version, in this case as per 6/19/2013, &amp;lt;code&amp;gt;mkspecs/qconfig.pri&amp;lt;/code&amp;gt; provides version info: QT_VERSION = 4.8.5). Alternatively, find zipped file of official release  [http://qt-project.org/downloads]. As per 6/20/2013 you need to address the next item, whatever the version you have.&lt;br /&gt;
&lt;br /&gt;
** There is bug that must be addressed: [https://bugreports.qt-project.org/browse/QTBUG-31882 Qt 4.8.5 doesn't compile with VC 11, marked P2:important]. To circumvent, replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with [https://bitbucket.org/Vertexwahn/bluego/src/56dbe84212222ec6954d8d327a5e443106bcc447/deploy/BlueGo0.0.4/qt4.8.3vs2012patch/HashSet.h?at=default HashSet.h].&lt;br /&gt;
&lt;br /&gt;
** Use VS command prompt &amp;quot;x64 Cross Tools&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
** Then paste the following (-mp for multiprocessor use during build). (Adjust perl path as necessary.)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
set QTDIR=C:\QtHacked\Qt&lt;br /&gt;
set PATH=%QTDIR%\bin;%PATH%&lt;br /&gt;
set QMAKESPEC=win32-msvc2012&lt;br /&gt;
cd /D %QTDIR%\&lt;br /&gt;
set PATH=C:\Perl64\bin;%PATH%&lt;br /&gt;
configure -release -mp -opensource -platform win32-msvc2012&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then go brew a pot of coffee and come back. If something fails at this point, you probably didn't install &amp;quot;Update 2&amp;quot; for VS 2012. Then,&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Now you have a few hours for yourself. When the build is done, you can test it by say running &amp;quot;C:\QtHacked\qt\bin\qtdemo.exe&amp;quot;.&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33469</id>
		<title>Documentation/Nightly/Developers/Build Instructions/Prerequisites</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33469"/>
		<updated>2013-06-20T16:42:15Z</updated>

		<summary type="html">&lt;p&gt;Imphead: /* Windows */  typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== PREREQUISITES ==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please check that the following tools are installed on your machine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = Qt libraries are '''required'''. Consider reading [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt|Qt requirements]].&lt;br /&gt;
| image= [[{{tool|logo|qt}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = CMake is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|cmake}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Git is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|git}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = SVN is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|svn}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Consider reading platform specific requirements listed below.&lt;br /&gt;
&lt;br /&gt;
=== Linux  ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Linux|here]]&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu / Debian ====&lt;br /&gt;
'''For Ubuntu 13.04''' note that you must download or install the standard cmake from [http://cmake.org/] because the version of cmake that comes with Ubuntu 13.04 cannot be used to build slicer.&lt;br /&gt;
&lt;br /&gt;
*Ubuntu, Debian squeeze, Debian testing (wheezy)  users, just type the following line in a terminal&lt;br /&gt;
 sudo apt-get install subversion git-core git-svn&lt;br /&gt;
 sudo apt-get install make gcc g++ libX11-dev libXt-dev libgl1-mesa-dev libosmesa6-dev libglu1-mesa-dev libfontconfig-dev libxrender-dev&lt;br /&gt;
&lt;br /&gt;
 mkdir ~/Support &amp;amp; cd Support     # This is where we will download and install required software&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner in your terminal, it will download and extract CMake&lt;br /&gt;
 cmake_package=&amp;quot;cmake-2.8.10.2-Linux-i386&amp;quot;; \&lt;br /&gt;
 wget http://www.cmake.org/files/v2.8/$cmake_package.tar.gz -v -O $cmake_package.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;
 tar -xzvf $cmake_package.tar.gz;&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner, symbolic links to cmake tools will be created in /usr/local/bin. &lt;br /&gt;
 # That way calling cmake, ctest, ... from the command line will resolve to this version of CMake.&lt;br /&gt;
 for tool in cmake ccmake ctest cpack; do sudo ln -s ~/$cmake_package/bin/$tool /usr/local/bin/$tool; done&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Debian squeeze has cmake 2.8.2 and Qt 4.6.3.  You will need to install newer versions of these packages.&lt;br /&gt;
* Ubuntu 10.04 has cmake 2.8.0 &lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== CentOS ====&lt;br /&gt;
*CentOS user type:&lt;br /&gt;
 yum install make gcc-c++ libX11-devel libXt-devel libXext-devel libGLU-devel mesa-libOSMesa-devel mesa-libGL-devel mesa-libGLU-devel ncurses&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Todo: This will have to be added in FAQ: Troubleshoot section&lt;br /&gt;
''glx-utils'' provides ''glxgears'' that can be used to test rendering&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MacOSX ===&lt;br /&gt;
* Mac Os X &amp;gt;= 10.5 (Leopard)&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
** For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) and/or recent XCode &amp;gt;= 4.5.X - [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.11 is required. See http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
&amp;lt;!-- Waiting for the official release, get the release candidate rc1 [http://www.cmake.org/files/v2.8/cmake-2.8.11-rc1-Darwin64-universal.tar.gz here]. For explanation, see [[Documentation/{{documentation/version}}/Developers/Build_Instructions#ld:_framework_not_found_QtWebKit|here]] and [[Documentation/{{documentation/version}}/Developers/Build_Instructions#On_MacOSX_10.8.2C_CMake_hangs_forever|here]]. These versions are also known to work: exact version 20130121-g92bd8 [http://www.cmake.org/files/dev/cmake-2.8.10.20130121-g92bd8-Darwin-universal.tar.gz here] (or version &amp;gt;= 2.8.10.20130220 [http://www.cmake.org/files/dev/?C=M;O=D here]).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 $ curl -O http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
 $ tar -xzvf cmake-2.8.11-Darwin64-universal.tar.gz --strip-components=1&lt;br /&gt;
&lt;br /&gt;
 $ CMake\ 2.8-11.app/Contents/bin/cmake --version&lt;br /&gt;
 cmake version 2.8.11&lt;br /&gt;
&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]] [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]] [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* XCode (for the SDK libs)&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Mac|here]]&lt;br /&gt;
* XQuartz - For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Newer Xcode versions (e.g. 4.3.2) use clang as the default compiler and '''clang is not compatible with ITK version 3'''.  You should use ITK version 4 with recent versions of Xcode.&lt;br /&gt;
** Xcode with gcc should ork with either version of ITK.&lt;br /&gt;
** OS X Mountain Lion: In Xcode 4.5 you now need to install command line tools (no longer included by default). Install within Xcode under the Xcode-&amp;gt;Preferences-&amp;gt;Downloads tab (otherwise git svn will give errors). Then you will need to install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Windows|here]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]]  [{{tool|download|cmake}}  CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]]  [{{tool|download|git}}  Git] &amp;gt;= 1.6.5.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* [https://code.google.com/p/msysgit/downloads/list?can=3 ''Git-X.X.X-preview2013XXXX.exe''] recommended.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Use of [http://code.google.com/p/tortoisegit/ TortoiseGit] is optional.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
** {{note}}For convenience, you could update the PATH variable so that ''git'' can be automatically discovered when configuring Slicer. If not, you will have to specify the GIT_EXECUTABLE at configure time.&lt;br /&gt;
* [http://www.sliksvn.com/en/download SlikSvn] &amp;lt;!-- or [http://www.cygwin.com cygwin's svn client]--&amp;gt;&lt;br /&gt;
* NSIS (optional): Needed if packaging Slicer - Click [http://nsis.sourceforge.net/Download here] to download.&lt;br /&gt;
* IDE&lt;br /&gt;
** '''Tested/Recommended''': [https://www.microsoft.com/visualstudio/en-us/products/2008-editions Microsoft Visual Studio 9 2008] (Any edition).&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=10986 here] to download SP1 and click [http://massmail.spl.harvard.edu/public-archives/slicer-devel/2012/008206.html here] to understand the motivation.&lt;br /&gt;
** '''Experimental''': The plan is to support [https://www.microsoft.com/visualstudio/en-us/products/2010-editions Microsoft Visual Studio 2010] (Any edition). {{note}} NOTE THAT EXPERIMENTAL MEANS THIS DOESN'T YET WORK :)&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=23691 here] to download SP1 and click [http://developer.qt.nokia.com/faq/answer/why_do_all_qt_4.7_applications_crash_when_using_windows_7_x64_w_vs_2010 here] to understand the motivation.&lt;br /&gt;
**** SP1 Compiler update. Click [https://www.microsoft.com/download/en/details.aspx?id=4422 here] to download and [http://slicer-devel.65872.n3.nabble.com/Windows-7-64Bits-Slicer-4-Build-with-VC-2010-problem-tt3730524.html#a3731661 here] to understand the motivation.&lt;br /&gt;
&amp;lt;!-- JC: This links shouldn't be here: 1) Since this the developer section, it's assumed Visual Studio is installed. 2) The Dll are distributed within Slicer package --&amp;gt;&lt;br /&gt;
&amp;lt;!-- *** Optional: &amp;quot;Microsoft Visual C++ 2010 SP1 Redistributable Package&amp;quot;. Click [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x64] download, or [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x86] download.  [http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;amp;id=29 x86 (32bit) for VS 2008] --&amp;gt;&lt;br /&gt;
** '''Experimental''' (Visual Studio 2012): Use a desktop version such as [http://www.microsoft.com/visualstudio/eng/downloads#d-express-windows-desktop Visual Studio 2012 Express &amp;lt;b&amp;gt;for Windows Desktop&amp;lt;/b&amp;gt;] and remember [http://www.microsoft.com/en-us/download/details.aspx?id=38188 Visual Studio 2012 Update 2]). Do &amp;lt;b&amp;gt;not&amp;lt;/b&amp;gt; use Visual Studio Express 2012 &amp;lt;em&amp;gt;for Windows 8&amp;lt;/em&amp;gt;. You must install [http://msdn.microsoft.com/en-us/library/ms717422.aspx Windows SDK], otherwise CMake will not even find the C compiler during configure. In CMake, choose &amp;lt;tt&amp;gt;Visual Studio 11 Win64&amp;lt;/tt&amp;gt; as generator.&lt;br /&gt;
&lt;br /&gt;
** '''Un-tested''': Cygwin suite (building with cygwin gcc not supported, but the cygwin shell environment can be used to run git, svn, etc).&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33457</id>
		<title>Documentation/Nightly/Developers/Build Instructions/Prerequisites</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33457"/>
		<updated>2013-06-20T15:28:57Z</updated>

		<summary type="html">&lt;p&gt;Imphead: /* Windows */  Update 2 for VS2012 is necessary, not optional&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== PREREQUISITES ==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please check that the following tools are installed on your machine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = Qt libraries are '''required'''. Consider reading [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt|Qt requirements]].&lt;br /&gt;
| image= [[{{tool|logo|qt}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = CMake is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|cmake}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Git is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|git}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = SVN is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|svn}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Consider reading platform specific requirements listed below.&lt;br /&gt;
&lt;br /&gt;
=== Linux  ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Linux|here]]&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu / Debian ====&lt;br /&gt;
'''For Ubuntu 13.04''' note that you must download or install the standard cmake from [http://cmake.org/] because the version of cmake that comes with Ubuntu 13.04 cannot be used to build slicer.&lt;br /&gt;
&lt;br /&gt;
*Ubuntu, Debian squeeze, Debian testing (wheezy)  users, just type the following line in a terminal&lt;br /&gt;
 sudo apt-get install subversion git-core git-svn&lt;br /&gt;
 sudo apt-get install make gcc g++ libX11-dev libXt-dev libgl1-mesa-dev libosmesa6-dev libglu1-mesa-dev libfontconfig-dev libxrender-dev&lt;br /&gt;
&lt;br /&gt;
 mkdir ~/Support &amp;amp; cd Support     # This is where we will download and install required software&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner in your terminal, it will download and extract CMake&lt;br /&gt;
 cmake_package=&amp;quot;cmake-2.8.10.2-Linux-i386&amp;quot;; \&lt;br /&gt;
 wget http://www.cmake.org/files/v2.8/$cmake_package.tar.gz -v -O $cmake_package.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;
 tar -xzvf $cmake_package.tar.gz;&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner, symbolic links to cmake tools will be created in /usr/local/bin. &lt;br /&gt;
 # That way calling cmake, ctest, ... from the command line will resolve to this version of CMake.&lt;br /&gt;
 for tool in cmake ccmake ctest cpack; do sudo ln -s ~/$cmake_package/bin/$tool /usr/local/bin/$tool; done&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Debian squeeze has cmake 2.8.2 and Qt 4.6.3.  You will need to install newer versions of these packages.&lt;br /&gt;
* Ubuntu 10.04 has cmake 2.8.0 &lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== CentOS ====&lt;br /&gt;
*CentOS user type:&lt;br /&gt;
 yum install make gcc-c++ libX11-devel libXt-devel libXext-devel libGLU-devel mesa-libOSMesa-devel mesa-libGL-devel mesa-libGLU-devel ncurses&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Todo: This will have to be added in FAQ: Troubleshoot section&lt;br /&gt;
''glx-utils'' provides ''glxgears'' that can be used to test rendering&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MacOSX ===&lt;br /&gt;
* Mac Os X &amp;gt;= 10.5 (Leopard)&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
** For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) and/or recent XCode &amp;gt;= 4.5.X - [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.11 is required. See http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
&amp;lt;!-- Waiting for the official release, get the release candidate rc1 [http://www.cmake.org/files/v2.8/cmake-2.8.11-rc1-Darwin64-universal.tar.gz here]. For explanation, see [[Documentation/{{documentation/version}}/Developers/Build_Instructions#ld:_framework_not_found_QtWebKit|here]] and [[Documentation/{{documentation/version}}/Developers/Build_Instructions#On_MacOSX_10.8.2C_CMake_hangs_forever|here]]. These versions are also known to work: exact version 20130121-g92bd8 [http://www.cmake.org/files/dev/cmake-2.8.10.20130121-g92bd8-Darwin-universal.tar.gz here] (or version &amp;gt;= 2.8.10.20130220 [http://www.cmake.org/files/dev/?C=M;O=D here]).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 $ curl -O http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
 $ tar -xzvf cmake-2.8.11-Darwin64-universal.tar.gz --strip-components=1&lt;br /&gt;
&lt;br /&gt;
 $ CMake\ 2.8-11.app/Contents/bin/cmake --version&lt;br /&gt;
 cmake version 2.8.11&lt;br /&gt;
&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]] [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]] [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* XCode (for the SDK libs)&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Mac|here]]&lt;br /&gt;
* XQuartz - For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Newer Xcode versions (e.g. 4.3.2) use clang as the default compiler and '''clang is not compatible with ITK version 3'''.  You should use ITK version 4 with recent versions of Xcode.&lt;br /&gt;
** Xcode with gcc should ork with either version of ITK.&lt;br /&gt;
** OS X Mountain Lion: In Xcode 4.5 you now need to install command line tools (no longer included by default). Install within Xcode under the Xcode-&amp;gt;Preferences-&amp;gt;Downloads tab (otherwise git svn will give errors). Then you will need to install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Windows|here]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]]  [{{tool|download|cmake}}  CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]]  [{{tool|download|git}}  Git] &amp;gt;= 1.6.5.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* [https://code.google.com/p/msysgit/downloads/list?can=3 ''Git-X.X.X-preview2013XXXX.exe''] recommended.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Use of [http://code.google.com/p/tortoisegit/ TortoiseGit] is optional.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
** {{note}}For convenience, you could update the PATH variable so that ''git'' can be automatically discovered when configuring Slicer. If not, you will have to specify the GIT_EXECUTABLE at configure time.&lt;br /&gt;
* [http://www.sliksvn.com/en/download SlikSvn] &amp;lt;!-- or [http://www.cygwin.com cygwin's svn client]--&amp;gt;&lt;br /&gt;
* NSIS (optional): Needed if packaging Slicer - Click [http://nsis.sourceforge.net/Download here] to download.&lt;br /&gt;
* IDE&lt;br /&gt;
** '''Tested/Recommended''': [https://www.microsoft.com/visualstudio/en-us/products/2008-editions Microsoft Visual Studio 9 2008] (Any edition).&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=10986 here] to download SP1 and click [http://massmail.spl.harvard.edu/public-archives/slicer-devel/2012/008206.html here] to understand the motivation.&lt;br /&gt;
** '''Experimental''': The plan is to support [https://www.microsoft.com/visualstudio/en-us/products/2010-editions Microsoft Visual Studio 2010] (Any edition). {{note}} NOTE THAT EXPERIMENTAL MEANS THIS DOESN'T YET WORK :)&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=23691 here] to download SP1 and click [http://developer.qt.nokia.com/faq/answer/why_do_all_qt_4.7_applications_crash_when_using_windows_7_x64_w_vs_2010 here] to understand the motivation.&lt;br /&gt;
**** SP1 Compiler update. Click [https://www.microsoft.com/download/en/details.aspx?id=4422 here] to download and [http://slicer-devel.65872.n3.nabble.com/Windows-7-64Bits-Slicer-4-Build-with-VC-2010-problem-tt3730524.html#a3731661 here] to understand the motivation.&lt;br /&gt;
&amp;lt;!-- JC: This links shouldn't be here: 1) Since this the developer section, it's assumed Visual Studio is installed. 2) The Dll are distributed within Slicer package --&amp;gt;&lt;br /&gt;
&amp;lt;!-- *** Optional: &amp;quot;Microsoft Visual C++ 2010 SP1 Redistributable Package&amp;quot;. Click [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x64] download, or [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x86] download.  [http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;amp;id=29 x86 (32bit) for VS 2008] --&amp;gt;&lt;br /&gt;
** '''Experimental''' (Visual Studio 2012): Use a desktop version such as [http://www.microsoft.com/visualstudio/eng/downloads#d-express-windows-desktop Visual Studio 2012 Express &amp;lt;b&amp;gt;for Windows Desktop&amp;lt;/b&amp;gt;] and remember http://www.microsoft.com/en-us/download/details.aspx?id=38188 Visual Studio 2012 Update 2]). Do &amp;lt;b&amp;gt;not&amp;lt;/b&amp;gt; use Visual Studio Express 2012 &amp;lt;em&amp;gt;for Windows 8&amp;lt;/em&amp;gt;. You must install [http://msdn.microsoft.com/en-us/library/ms717422.aspx Windows SDK], otherwise CMake will not even find the C compiler during configure. In CMake, choose &amp;lt;tt&amp;gt;Visual Studio 11 Win64&amp;lt;/tt&amp;gt; as generator.&lt;br /&gt;
&lt;br /&gt;
** '''Un-tested''': Cygwin suite (building with cygwin gcc not supported, but the cygwin shell environment can be used to run git, svn, etc).&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33454</id>
		<title>Documentation/Labs/Qt484</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33454"/>
		<updated>2013-06-20T15:18:41Z</updated>

		<summary type="html">&lt;p&gt;Imphead: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* To compile Qt with VS 2012 (VS 11) for 64 bit (not quite tested yet..):&lt;br /&gt;
&lt;br /&gt;
** Install perl (I used [http://www.activestate.com/activeperl/downloads] and choose 64 bit version)&lt;br /&gt;
&lt;br /&gt;
** Build/install in say &amp;lt;code&amp;gt;C:\QtHacked&amp;lt;/code&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
** Cd into this directory and git clone git://gitorious.org/qt/qt (this gives a version, not sure which, in this case as per 6/19/2013, mkspecs/qconfig.pri provides version info: QT_VERSION = 4.8.5, a prelease?). Alternatively, better?, find zipped file of official release  [http://qt-project.org/downloads].&lt;br /&gt;
&lt;br /&gt;
** This is bug [https://bugreports.qt-project.org/browse/QTBUG-31882 Qt 4.8.5 doesn't compile with VC 11, marked P2:important]: you must replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with [https://bitbucket.org/Vertexwahn/bluego/src/56dbe84212222ec6954d8d327a5e443106bcc447/deploy/BlueGo0.0.4/qt4.8.3vs2012patch/HashSet.h?at=default HashSet.h].&lt;br /&gt;
&lt;br /&gt;
** Use VS command prompt &amp;quot;x64 Cross Tools&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
** Then paste the following (-mp for multiprocessor use during build). (Adjust perl path as necessary.)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
set QTDIR=C:\QtHacked\Qt&lt;br /&gt;
set PATH=%QTDIR%\bin;%PATH%&lt;br /&gt;
set QMAKESPEC=win32-msvc2012&lt;br /&gt;
cd /D %QTDIR%\&lt;br /&gt;
set PATH=C:\Perl64\bin;%PATH%&lt;br /&gt;
configure -release -mp -opensource -platform win32-msvc2012&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then go brew a pot of coffee. If something fails at this point, you probably didn't install &amp;quot;Update 2&amp;quot; for VS 2012.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33427</id>
		<title>Documentation/Labs/Qt484</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33427"/>
		<updated>2013-06-20T13:31:35Z</updated>

		<summary type="html">&lt;p&gt;Imphead: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* To compile Qt with VS 2012 (VS 11) for 64bit (not quite tested yet..):&lt;br /&gt;
&lt;br /&gt;
** Install perl (I used [http://www.activestate.com/activeperl/downloads])&lt;br /&gt;
&lt;br /&gt;
** Build/install in say &amp;lt;code&amp;gt;C:\Qt&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
** Augment windows environment PATH with &amp;lt;code&amp;gt;C:\Qt\bin&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
** git clone git://gitorious.org/qt/qt (this gives a version, not sure which,in this case as per 6/19/2013, mkspecs/qconfig.pri provides version info: QT_VERSION = 4.8.5, a prelease?). Alternatively, better?, find zipped file of official release  [http://qt-project.org/downloads].&lt;br /&gt;
&lt;br /&gt;
** This is bug [https://bugreports.qt-project.org/browse/QTBUG-31882 Qt 4.8.5 doesn't compile with VC 11, marked P2:important]: you must replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with [https://bitbucket.org/Vertexwahn/bluego/src/56dbe84212222ec6954d8d327a5e443106bcc447/deploy/BlueGo0.0.4/qt4.8.3vs2012patch/HashSet.h?at=default HashSet.h].&lt;br /&gt;
&lt;br /&gt;
** Use VS command prompt (use &amp;quot;Developer Command Prompt&amp;quot; (??) or better &amp;quot;x64 Cross Tools&amp;quot; (??))&lt;br /&gt;
&lt;br /&gt;
** Then paste the following (-mp for multiprocessor use during build).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
set QTDIR=C:\Qt&lt;br /&gt;
set QMAKESPEC=win32-msvc2012&lt;br /&gt;
cd %QTDIR%&lt;br /&gt;
configure -release -mp -opensource -platform win32-msvc2012&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33423</id>
		<title>Documentation/Labs/Qt484</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33423"/>
		<updated>2013-06-19T19:20:13Z</updated>

		<summary type="html">&lt;p&gt;Imphead: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* To compile Qt with VS 2012 (VS 11) for 64bit (not quite tested yet..):&lt;br /&gt;
&lt;br /&gt;
** Install perl (I used [http://www.activestate.com/activeperl/downloads])&lt;br /&gt;
&lt;br /&gt;
** Build/install in say &amp;lt;code&amp;gt;C:\Qt&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
** Augment windows environment PATH with &amp;lt;code&amp;gt;C:\Qt\bin&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
** git clone git://gitorious.org/qt/qt (this gives a version, not sure which,in this case as per 6/19/2013, mkspecs/qconfig.pri provides version info: QT_VERSION = 4.8.5, a prelease?). Alternatively, better?, find zipped file of official release  [http://qt-project.org/downloads].&lt;br /&gt;
&lt;br /&gt;
** Replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with [https://bitbucket.org/Vertexwahn/bluego/src/56dbe84212222ec6954d8d327a5e443106bcc447/deploy/BlueGo0.0.4/qt4.8.3vs2012patch/HashSet.h?at=default HashSet.h].&lt;br /&gt;
&lt;br /&gt;
** Use VS command prompt (use &amp;quot;Developer Command Prompt&amp;quot; (??) or better &amp;quot;x64 Cross Tools&amp;quot; (??))&lt;br /&gt;
&lt;br /&gt;
** Then paste the following (-mp for multiprocessor use during build).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
set QTDIR=C:\Qt&lt;br /&gt;
set QMAKESPEC=win32-msvc2012&lt;br /&gt;
cd %QTDIR%&lt;br /&gt;
configure -release -mp -opensource -platform win32-msvc2012&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33422</id>
		<title>Documentation/Labs/Qt484</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33422"/>
		<updated>2013-06-19T19:18:55Z</updated>

		<summary type="html">&lt;p&gt;Imphead: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* To compile Qt with VS 2012 (VS 11) for 64bit (not quite tested yet..):&lt;br /&gt;
&lt;br /&gt;
** Install perl (I used [http://www.activestate.com/activeperl/downloads])&lt;br /&gt;
&lt;br /&gt;
** Build/install in say &amp;lt;code&amp;gt;C:\Qt&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
** Augment windows environment PATH with &amp;lt;code&amp;gt;C:\Qt\bin&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
** git clone git://gitorious.org/qt/qt (this gives a version, not sure which,in this case as per 6/19/2013, mkspecs/qconfig.pri provides version info: QT_VERSION = 4.8.5, a prelease?). Alternatively, better?, find zipped file of official release  [http://qt-project.org/downloads].&lt;br /&gt;
&lt;br /&gt;
** Replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with [https://bitbucket.org/Vertexwahn/bluego/src/56dbe84212222ec6954d8d327a5e443106bcc447/deploy/BlueGo0.0.4/qt4.8.3vs2012patch/HashSet.h?at=default HashSet.h].&lt;br /&gt;
&lt;br /&gt;
** Use VS command prompt (figure out whether to use &amp;quot;Developer Command Prompt&amp;quot; or &amp;quot;x64 Cross Tools&amp;quot; to specify architecture)&lt;br /&gt;
&lt;br /&gt;
** Then paste the following (-mp for multiprocessor use during build).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
set QTDIR=C:\Qt&lt;br /&gt;
set QMAKESPEC=win32-msvc2012&lt;br /&gt;
cd %QTDIR%&lt;br /&gt;
configure -release -mp -opensource -platform win32-msvc2012&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33421</id>
		<title>Documentation/Labs/Qt484</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33421"/>
		<updated>2013-06-19T19:10:18Z</updated>

		<summary type="html">&lt;p&gt;Imphead: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*To compile Qt with VS 2012 (VS 11) for 64bit (not quite tested..):&lt;br /&gt;
&lt;br /&gt;
** Install perl (I used [http://www.activestate.com/activeperl/downloads])&lt;br /&gt;
&lt;br /&gt;
** Build/install in say &amp;lt;code&amp;gt;C:\Qt&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
** Augment windows environment PATH with &amp;lt;code&amp;gt;C:\Qt\bin&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
** git clone git://gitorious.org/qt/qt (this gives a version, not sure which,in this case as per 6/19/2013, mkspecs/qconfig.pri provides version info: QT_VERSION = 4.8.5, a prelease?). Alternatively, better?, find zipped file of official release  [http://qt-project.org/downloads].&lt;br /&gt;
&lt;br /&gt;
** Replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with [https://bitbucket.org/Vertexwahn/bluego/src/56dbe84212222ec6954d8d327a5e443106bcc447/deploy/BlueGo0.0.4/qt4.8.3vs2012patch/HashSet.h?at=default HashSet.h].&lt;br /&gt;
&lt;br /&gt;
** Use VS command prompt (figure out whether to use &amp;quot;Developer Command Prompt&amp;quot; or &amp;quot;x64 Cross Tools&amp;quot; to specify architecture)&lt;br /&gt;
&lt;br /&gt;
** Then paste the following (-mp for multiprocessor use during build).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
set QTDIR=C:\Qt&lt;br /&gt;
set QMAKESPEC=win32-msvc2012&lt;br /&gt;
cd c:\Users\blah\Qt&lt;br /&gt;
configure -release -mp -opensource -platform win32-msvc2012&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33420</id>
		<title>Documentation/Labs/Qt484</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33420"/>
		<updated>2013-06-19T18:48:12Z</updated>

		<summary type="html">&lt;p&gt;Imphead: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*To compile Qt with VS 2012 (VS 11) for 64bit (not quite tested..):&lt;br /&gt;
&lt;br /&gt;
** Install perl (I used [http://www.activestate.com/activeperl/downloads])&lt;br /&gt;
&lt;br /&gt;
** Augment windows environment PATH with &amp;lt;code&amp;gt;C:\Qt&amp;lt;/code&amp;gt; (name of build directory).&lt;br /&gt;
&lt;br /&gt;
** git clone git://gitorious.org/qt/qt (this gives a version, not sure which,in this case as per 6/19/2013, mkspecs/qconfig.pri provides version info: QT_VERSION = 4.8.5, a prelease?). Alternatively, better?, find zipped file of official release  [http://qt-project.org/downloads].&lt;br /&gt;
&lt;br /&gt;
** Replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with [https://bitbucket.org/Vertexwahn/bluego/src/56dbe84212222ec6954d8d327a5e443106bcc447/deploy/BlueGo0.0.4/qt4.8.3vs2012patch/HashSet.h?at=default HashSet.h].&lt;br /&gt;
&lt;br /&gt;
** Use VS command prompt (figure out whether to use &amp;quot;Developer Command Prompt&amp;quot; or &amp;quot;x64 Cross Tools&amp;quot; to specify architecture)&lt;br /&gt;
&lt;br /&gt;
** Then paste the following (-mp for multiprocessor use during build).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
set QTDIR=C:\Qt&lt;br /&gt;
set QMAKESPEC=win32-msvc2010&lt;br /&gt;
cd c:\Users\blah\Qt&lt;br /&gt;
configure -release -mp -opensource -platform win32-msvc2012&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33419</id>
		<title>Documentation/Labs/Qt484</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33419"/>
		<updated>2013-06-19T18:39:40Z</updated>

		<summary type="html">&lt;p&gt;Imphead: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*To compile Qt with VS 2012 (VS 11) for 64bit:&lt;br /&gt;
&lt;br /&gt;
** Install perl (I used [http://www.activestate.com/activeperl/downloads])&lt;br /&gt;
&lt;br /&gt;
** Augment windows environment PATH with &amp;lt;code&amp;gt;C:\Qt&amp;lt;/code&amp;gt; (name of build directory).&lt;br /&gt;
&lt;br /&gt;
** git clone git://gitorious.org/qt/qt (this gives a version, not sure which,in this case as per 6/19/2013, mkspecs/qconfig.pri provides version info: QT_VERSION = 4.8.5, a prelease?). Alternatively, better?, find zipped file of official release  [http://qt-project.org/downloads].&lt;br /&gt;
&lt;br /&gt;
** Replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with [https://bitbucket.org/Vertexwahn/bluego/src/56dbe84212222ec6954d8d327a5e443106bcc447/deploy/BlueGo0.0.4/qt4.8.3vs2012patch/HashSet.h?at=default HashSet.h].&lt;br /&gt;
&lt;br /&gt;
** Then paste the following (-mp for multiprocessor use during build).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
set QTDIR=C:\Qt&lt;br /&gt;
set QMAKESPEC=win32-msvc2010&lt;br /&gt;
cd c:\Users\blah\Qt&lt;br /&gt;
configure -release -mp -opensource -platform win32-msvc2012&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33418</id>
		<title>Documentation/Labs/Qt484</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Labs/Qt484&amp;diff=33418"/>
		<updated>2013-06-19T18:38:43Z</updated>

		<summary type="html">&lt;p&gt;Imphead: Created page with '*To compile Qt with VS 2012 (VS 11) for 64bit:  ** Install perl (I did used [http://www.activestate.com/activeperl/downloads])  ** Augment windows environment PATH with &amp;lt;code&amp;gt;C:\…'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*To compile Qt with VS 2012 (VS 11) for 64bit:&lt;br /&gt;
&lt;br /&gt;
** Install perl (I did used [http://www.activestate.com/activeperl/downloads])&lt;br /&gt;
&lt;br /&gt;
** Augment windows environment PATH with &amp;lt;code&amp;gt;C:\Qt&amp;lt;/code&amp;gt; (name of build directory).&lt;br /&gt;
&lt;br /&gt;
** git clone git://gitorious.org/qt/qt (this gives a version, not sure which,in this case as per 6/19/2013, mkspecs/qconfig.pri provides version info: QT_VERSION = 4.8.5, a prelease?). Alternatively, better?, find zipped file of official release  [http://qt-project.org/downloads].&lt;br /&gt;
&lt;br /&gt;
** Replace HashSet.h in src\3rdparty\webkit\Source\JavaScriptCore\wtf with [https://bitbucket.org/Vertexwahn/bluego/src/56dbe84212222ec6954d8d327a5e443106bcc447/deploy/BlueGo0.0.4/qt4.8.3vs2012patch/HashSet.h?at=default HashSet.h].&lt;br /&gt;
&lt;br /&gt;
** Then paste the following (-mp for multiprocessor use during build).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
set QTDIR=C:\Qt&lt;br /&gt;
set QMAKESPEC=win32-msvc2010&lt;br /&gt;
cd c:\Users\blah\Qt&lt;br /&gt;
configure -release -mp -opensource -platform win32-msvc2012&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nmake&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions&amp;diff=33402</id>
		<title>Documentation/Nightly/Developers/Build Instructions</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions&amp;diff=33402"/>
		<updated>2013-06-18T19:41:10Z</updated>

		<summary type="html">&lt;p&gt;Imphead: /* Common errors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{:{{FULLPAGENAME}}/Prerequisites}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{:{{FULLPAGENAME}}/CheckoutSourceCode}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{:{{FULLPAGENAME}}/Configure}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{:{{FULLPAGENAME}}/Compile}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== RUN Slicer ==&lt;br /&gt;
&lt;br /&gt;
{|width = &amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; style=&amp;quot;border-bottom: 1px solid darkgrey;font-size: 75%;&amp;quot;| Linux or MacOSX&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; style=&amp;quot;border-bottom: 1px solid darkgrey;font-size: 75%;&amp;quot;| Windows&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Start a terminal.&lt;br /&gt;
{{pre2|scroll|&lt;br /&gt;
$ Slicer-SuperBuild/Slicer-build/Slicer}}&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Start Windows Explorer. [http://www.wikihow.com/Open-Windows-Explorer Need help?]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Run &amp;lt;code&amp;gt;Slicer-SuperBuild/Slicer-build/Slicer.exe&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
&lt;br /&gt;
* Linux Ubuntu: if you have odd rendering artifacts, try disabling visual effects (System/Appearance/Visual Effects)&lt;br /&gt;
* Windows: If build was OK, but it Slicer doesn't start (gives the error: [bin/Release/SlicerQT-real.exe] exit abnormally - Report the problem.) then one possible root cause is that you have a copy of Python26.dll in your windows system directory (e.g., c:\Windows\System32\python26.dll). The solution is to rename or remove the python dll in the system directory. See more details here: http://www.na-mic.org/Bug/view.php?id=1180&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== DEBUG Slicer ==&lt;br /&gt;
&lt;br /&gt;
To be able to debug Slicer application, you are expected to build it with Debug symbols in a clean directory.&lt;br /&gt;
&lt;br /&gt;
{|width = &amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; style=&amp;quot;border-bottom: 1px solid darkgrey;font-size: 75%;&amp;quot;| Linux or MacOSX&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; style=&amp;quot;border-bottom: 1px solid darkgrey;font-size: 75%;&amp;quot;| Windows (Visual Studio)&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Configure Slicer using &amp;lt;code&amp;gt;-DCMAKE_BUILD_TYPE:STRING=Debug&amp;lt;/code&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Selecting &amp;lt;code&amp;gt;Debug&amp;lt;/code&amp;gt; configuration in Visual Studio.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|width = &amp;quot;100%&amp;quot;&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; style=&amp;quot;border-bottom: 1px solid darkgrey;font-size: 75%;&amp;quot;| Linux or MacOSX&lt;br /&gt;
! width=&amp;quot;50%&amp;quot; style=&amp;quot;border-bottom: 1px solid darkgrey;font-size: 75%;&amp;quot;| Windows (Visual Studio)&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{wip}} TBD&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
&amp;lt;ol start=&amp;quot;1&amp;quot; style=&amp;quot;list-style-type: decimal;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Press &amp;quot;Win-R,&amp;quot; type &amp;quot;cmd&amp;quot; and press &amp;quot;Enter&amp;quot; to open a Command Prompt session.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
  &amp;lt;p&amp;gt;Start Visual Studio with Slicer environment:&amp;lt;/p&amp;gt;&lt;br /&gt;
  &amp;lt;pre&amp;gt;&amp;amp;gt; cd \path\to\Slicer-SuperBuild\Slicer-build&lt;br /&gt;
&amp;amp;gt; Slicer.exe --VisualStudio Slicer.sln&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Common errors ==&lt;br /&gt;
&lt;br /&gt;
=== CMake complains during configuration ===&lt;br /&gt;
CMake may not directly show what's wrong; try to look for log files of the form BUILD/CMakeFiles/*.log (where BUILD is your build directory) to glean further information.&lt;br /&gt;
&lt;br /&gt;
=== A tool returned an error code from &amp;quot;Generating vtksysProcessFwd9xEnc.c&amp;quot; ===&lt;br /&gt;
 The application has failed to start because its side-by-side configuration is incorrect.&lt;br /&gt;
 Please see the application event log or use the command-line sxstrace.exe tool for more detail.&lt;br /&gt;
 Project : error PRJ0019: A tool returned an error code from &amp;quot;Generating&lt;br /&gt;
 vtksysProcessFwd9xEnc.c&amp;quot;&lt;br /&gt;
Install [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites#Windows|SP1 of Visual Studio]]&lt;br /&gt;
&lt;br /&gt;
=== error: ‘class QList&amp;lt;QString&amp;gt;’ has no member named ‘reserve’ ===&lt;br /&gt;
 /nfs/Users/blowekamp/QtSDK/Desktop/Qt/474/gcc/include/QtCore/qdatastream.h: In function ‘QDataStream&amp;amp; operator&amp;gt;&amp;gt;(QDataStream&amp;amp;, QList&amp;lt;T&amp;gt;&amp;amp;) [with T = QString]’:&lt;br /&gt;
 /nfs/Users/blowekamp/QtSDK/Desktop/Qt/474/gcc/include/QtCore/qstringlist.h:247:   instantiated from here&lt;br /&gt;
 /nfs/Users/blowekamp/QtSDK/Desktop/Qt/474/gcc/include/QtCore/qdatastream.h:246: error: ‘class QList&amp;lt;QString&amp;gt;’ has no member named ‘reserve’&lt;br /&gt;
You have multiple Qt versions installed on your machine. Try removing the Qt version installed on the system.&lt;br /&gt;
&lt;br /&gt;
=== libarchive.so: undefined reference to `SHA256_Update' ===&lt;br /&gt;
&lt;br /&gt;
 Linking CXX executable ../../../../../bin/MRMLLogicCxxTests&lt;br /&gt;
 /home/benjaminlong/work/slicer/Slicer-SuperBuild-Debug/LibArchive-install/lib/libarchive.so: undefined reference to `SHA256_Update'&lt;br /&gt;
 /home/benjaminlong/work/slicer/Slicer-SuperBuild-Debug/LibArchive-install/lib/libarchive.so: undefined reference to `SHA256_Final'&lt;br /&gt;
 /home/benjaminlong/work/slicer/Slicer-SuperBuild-Debug/LibArchive-install/lib/libarchive.so: undefined reference to `SHA256_Init'&lt;br /&gt;
 /home/benjaminlong/work/slicer/Slicer-SuperBuild-Debug/LibArchive-install/lib/libarchive.so: undefined reference to `MD5_Init'&lt;br /&gt;
&lt;br /&gt;
Solution:&lt;br /&gt;
 cd Slicer-SuperBuild&lt;br /&gt;
 rm -rf LibArchive-*&lt;br /&gt;
 make -j4&lt;br /&gt;
&lt;br /&gt;
Details:&lt;br /&gt;
* http://na-mic.org/Mantis/view.php?id=1616&lt;br /&gt;
* http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&amp;amp;revision=18923&lt;br /&gt;
* http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&amp;amp;revision=18969&lt;br /&gt;
&lt;br /&gt;
=== A tool returned an error code from &amp;quot;Performing configure step for ...&amp;quot; ===&lt;br /&gt;
&lt;br /&gt;
CMake has some problems building complex projects on Windows7. See more details in: http://cmake.org/Bug/view.php?id=12957&lt;br /&gt;
&lt;br /&gt;
&amp;lt;del&amp;gt;A fix has been already identified and soon will be available in an official CMake release (probably 2.8.8). Until then this unofficial version can be used (based on CMake-2.8.7): https://qshare.queensu.ca/Users01/lasso/public/cmake-2.8.7.12957-win32-x86.exe&amp;lt;/del&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
This issue has been fixed by commit [http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4fbdce2b 4fbdce2b] included in CMake &amp;gt;= 2.8.8. Download CMake version recommended in the [[Documentation/{{documentation/version}}/Developers/Build_Instructions#Windows|Prequisites]]&lt;br /&gt;
&lt;br /&gt;
=== A tool returned an error code from &amp;quot;Performing download step (git clone) for ...&amp;quot; ===&lt;br /&gt;
&lt;br /&gt;
CMake has problems cloning git repositories on Windows7. See more details in http://cmake.org/Bug/view.php?id=12564&lt;br /&gt;
&lt;br /&gt;
If you think the described problem is the same as you have, please add your specific error message to the bug report (the more people report the problem the sooner it will be fixed).&lt;br /&gt;
&lt;br /&gt;
=== No rule to make target `/usr/lib/x86_64-linux-gnu/libGL.so' ===&lt;br /&gt;
See http://techtidings.blogspot.com/2012/01/problem-with-libglso-on-64-bit-ubuntu.html&lt;br /&gt;
&lt;br /&gt;
=== X11 Window errors at start time ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X Error: BadWindow (invalid Window parameter) 3&lt;br /&gt;
  Extension:    137 (Uknown extension)&lt;br /&gt;
  Minor opcode: 4 (Unknown request)&lt;br /&gt;
  Resource id:  0x4200199&lt;br /&gt;
X Error: BadWindow (invalid Window parameter) 3&lt;br /&gt;
  Extension:    137 (Uknown extension)&lt;br /&gt;
  Minor opcode: 4 (Unknown request)&lt;br /&gt;
  Resource id:  0x42001a6&lt;br /&gt;
X Error: BadWindow (invalid Window parameter) 3&lt;br /&gt;
  Extension:    137 (Uknown extension)&lt;br /&gt;
  Minor opcode: 4 (Unknown request)&lt;br /&gt;
  Resource id:  0x42001b3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Solution: &lt;br /&gt;
* Reinstall Nvidia drivers (that also rewrite the xorg.conf file).&lt;br /&gt;
&lt;br /&gt;
=== error C2061: syntax error : identifier 'ssize_t' ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
4&amp;gt;1&amp;gt;Compiling...&lt;br /&gt;
4&amp;gt;1&amp;gt;version.c&lt;br /&gt;
4&amp;gt;1&amp;gt;c:\chene\winbin64\slicer4\cmcurl\urldata.h(585) : error C2061: syntax error : identifier 'ssize_t'&lt;br /&gt;
4&amp;gt;1&amp;gt;c:\chene\winbin64\slicer4\cmcurl\urldata.h(593) : error C2365: 'fread' : redefinition; previous definition was 'function'&lt;br /&gt;
4&amp;gt;1&amp;gt;        C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\include\stdio.h(248) : see declaration of 'fread'&lt;br /&gt;
4&amp;gt;1&amp;gt;c:\chene\winbin64\slicer4\cmcurl\urldata.h(610) : error C2059: syntax error : '}'&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Solution:&lt;br /&gt;
* See [[#A_tool_returned_an_error_code_from_.22Performing_configure_step_for_....22]]&lt;br /&gt;
&lt;br /&gt;
=== ld: framework not found QtWebKit ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[...]&lt;br /&gt;
Linking CXX shared library libPythonQt.dylib&lt;br /&gt;
ld: framework not found QtWebKit&lt;br /&gt;
clang: error: linker command failed with exit code 1 (use -v to see invocation)&lt;br /&gt;
make[8]: *** [libPythonQt.dylib] Error 1&lt;br /&gt;
[...]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See Slicer issue [http://na-mic.org/Mantis/view.php?id=2860 #2860]&lt;br /&gt;
&lt;br /&gt;
Workaround:&lt;br /&gt;
* See http://public.kitware.com/Bug/view.php?id=13765#c31824&lt;br /&gt;
&lt;br /&gt;
Solution:&lt;br /&gt;
* Use a [http://www.cmake.org/files/dev/?C=M;O=D recent nightly build of CMake]. It includes patch [http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cc676c3a cc676c3a]. Note also that the coming version of CMake 2.8.11 will work as expected.&lt;br /&gt;
&lt;br /&gt;
=== On MacOSX 10.8, CMake hangs forever ===&lt;br /&gt;
&lt;br /&gt;
Issue: http://www.na-mic.org/Bug/view.php?id=2957&lt;br /&gt;
&lt;br /&gt;
Solution: Use CMake build &amp;gt;= 2.8.10.20130220-g53b279. See http://www.cmake.org/files/dev/cmake-2.8.10.20130220-g53b279-Darwin-universal.tar.gz&lt;br /&gt;
&lt;br /&gt;
Details:&lt;br /&gt;
&lt;br /&gt;
CMake folks (Thanks Brad King :)) fixed an issue that was preventing the most recent nightly from being used to successfully compile Slicer. The fix has been tested and is known to work. Tomorrow nightly build of CMake and by extension the coming release of CMake 2.8.11 will work.&lt;br /&gt;
&lt;br /&gt;
If you are curious about the details, check the commit message:&lt;br /&gt;
&lt;br /&gt;
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1df09e57 [^]&lt;br /&gt;
&lt;br /&gt;
The associated CMake test have also been updated: &lt;br /&gt;
&lt;br /&gt;
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bff3d9ce [^]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Quick Build on Debian==&lt;br /&gt;
 sudo aptitude update&lt;br /&gt;
 sudo aptitude install subversion git gcc g++ make cmake-curses-gui libqt4-dev&lt;br /&gt;
 svn co http://svn.slicer.org/Slicer4/trunk Slicer&lt;br /&gt;
 mkdir Slicer-SuperBuild-Debug&lt;br /&gt;
 cd Slicer-SuperBuild-Debug&lt;br /&gt;
 cmake ../Slicer&lt;br /&gt;
 make -j5&lt;br /&gt;
 &lt;br /&gt;
 # runtime dependency:&lt;br /&gt;
 sudo aptitude install python-tk&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33401</id>
		<title>Documentation/Nightly/Developers/Build Instructions/Prerequisites</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33401"/>
		<updated>2013-06-18T19:28:50Z</updated>

		<summary type="html">&lt;p&gt;Imphead: /* Windows */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== PREREQUISITES ==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please check that the following tools are installed on your machine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = Qt libraries are '''required'''. Consider reading [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt|Qt requirements]].&lt;br /&gt;
| image= [[{{tool|logo|qt}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = CMake is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|cmake}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Git is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|git}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = SVN is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|svn}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Consider reading platform specific requirements listed below.&lt;br /&gt;
&lt;br /&gt;
=== Linux  ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Linux|here]]&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu / Debian ====&lt;br /&gt;
'''For Ubuntu 13.04''' note that you must download or install the standard cmake from [http://cmake.org/] because the version of cmake that comes with Ubuntu 13.04 cannot be used to build slicer.&lt;br /&gt;
&lt;br /&gt;
*Ubuntu, Debian squeeze, Debian testing (wheezy)  users, just type the following line in a terminal&lt;br /&gt;
 sudo apt-get install subversion git-core git-svn&lt;br /&gt;
 sudo apt-get install make gcc g++ libX11-dev libXt-dev libgl1-mesa-dev libosmesa6-dev libglu1-mesa-dev libfontconfig-dev libxrender-dev&lt;br /&gt;
&lt;br /&gt;
 mkdir ~/Support &amp;amp; cd Support     # This is where we will download and install required software&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner in your terminal, it will download and extract CMake&lt;br /&gt;
 cmake_package=&amp;quot;cmake-2.8.10.2-Linux-i386&amp;quot;; \&lt;br /&gt;
 wget http://www.cmake.org/files/v2.8/$cmake_package.tar.gz -v -O $cmake_package.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;
 tar -xzvf $cmake_package.tar.gz;&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner, symbolic links to cmake tools will be created in /usr/local/bin. &lt;br /&gt;
 # That way calling cmake, ctest, ... from the command line will resolve to this version of CMake.&lt;br /&gt;
 for tool in cmake ccmake ctest cpack; do sudo ln -s ~/$cmake_package/bin/$tool /usr/local/bin/$tool; done&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Debian squeeze has cmake 2.8.2 and Qt 4.6.3.  You will need to install newer versions of these packages.&lt;br /&gt;
* Ubuntu 10.04 has cmake 2.8.0 &lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== CentOS ====&lt;br /&gt;
*CentOS user type:&lt;br /&gt;
 yum install make gcc-c++ libX11-devel libXt-devel libXext-devel libGLU-devel mesa-libOSMesa-devel mesa-libGL-devel mesa-libGLU-devel ncurses&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Todo: This will have to be added in FAQ: Troubleshoot section&lt;br /&gt;
''glx-utils'' provides ''glxgears'' that can be used to test rendering&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MacOSX ===&lt;br /&gt;
* Mac Os X &amp;gt;= 10.5 (Leopard)&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
** For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) and/or recent XCode &amp;gt;= 4.5.X - [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.11 is required. See http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
&amp;lt;!-- Waiting for the official release, get the release candidate rc1 [http://www.cmake.org/files/v2.8/cmake-2.8.11-rc1-Darwin64-universal.tar.gz here]. For explanation, see [[Documentation/{{documentation/version}}/Developers/Build_Instructions#ld:_framework_not_found_QtWebKit|here]] and [[Documentation/{{documentation/version}}/Developers/Build_Instructions#On_MacOSX_10.8.2C_CMake_hangs_forever|here]]. These versions are also known to work: exact version 20130121-g92bd8 [http://www.cmake.org/files/dev/cmake-2.8.10.20130121-g92bd8-Darwin-universal.tar.gz here] (or version &amp;gt;= 2.8.10.20130220 [http://www.cmake.org/files/dev/?C=M;O=D here]).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 $ curl -O http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
 $ tar -xzvf cmake-2.8.11-Darwin64-universal.tar.gz --strip-components=1&lt;br /&gt;
&lt;br /&gt;
 $ CMake\ 2.8-11.app/Contents/bin/cmake --version&lt;br /&gt;
 cmake version 2.8.11&lt;br /&gt;
&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]] [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]] [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* XCode (for the SDK libs)&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Mac|here]]&lt;br /&gt;
* XQuartz - For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Newer Xcode versions (e.g. 4.3.2) use clang as the default compiler and '''clang is not compatible with ITK version 3'''.  You should use ITK version 4 with recent versions of Xcode.&lt;br /&gt;
** Xcode with gcc should ork with either version of ITK.&lt;br /&gt;
** OS X Mountain Lion: In Xcode 4.5 you now need to install command line tools (no longer included by default). Install within Xcode under the Xcode-&amp;gt;Preferences-&amp;gt;Downloads tab (otherwise git svn will give errors). Then you will need to install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Windows|here]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]]  [{{tool|download|cmake}}  CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]]  [{{tool|download|git}}  Git] &amp;gt;= 1.6.5.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* [https://code.google.com/p/msysgit/downloads/list?can=3 ''Git-X.X.X-preview2013XXXX.exe''] recommended.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Use of [http://code.google.com/p/tortoisegit/ TortoiseGit] is optional.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
** {{note}}For convenience, you could update the PATH variable so that ''git'' can be automatically discovered when configuring Slicer. If not, you will have to specify the GIT_EXECUTABLE at configure time.&lt;br /&gt;
* [http://www.sliksvn.com/en/download SlikSvn] &amp;lt;!-- or [http://www.cygwin.com cygwin's svn client]--&amp;gt;&lt;br /&gt;
* NSIS (optional): Needed if packaging Slicer - Click [http://nsis.sourceforge.net/Download here] to download.&lt;br /&gt;
* IDE&lt;br /&gt;
** '''Tested/Recommended''': [https://www.microsoft.com/visualstudio/en-us/products/2008-editions Microsoft Visual Studio 9 2008] (Any edition).&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=10986 here] to download SP1 and click [http://massmail.spl.harvard.edu/public-archives/slicer-devel/2012/008206.html here] to understand the motivation.&lt;br /&gt;
** '''Experimental''': The plan is to support [https://www.microsoft.com/visualstudio/en-us/products/2010-editions Microsoft Visual Studio 2010] (Any edition). {{note}} NOTE THAT EXPERIMENTAL MEANS THIS DOESN'T YET WORK :)&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=23691 here] to download SP1 and click [http://developer.qt.nokia.com/faq/answer/why_do_all_qt_4.7_applications_crash_when_using_windows_7_x64_w_vs_2010 here] to understand the motivation.&lt;br /&gt;
**** SP1 Compiler update. Click [https://www.microsoft.com/download/en/details.aspx?id=4422 here] to download and [http://slicer-devel.65872.n3.nabble.com/Windows-7-64Bits-Slicer-4-Build-with-VC-2010-problem-tt3730524.html#a3731661 here] to understand the motivation.&lt;br /&gt;
&amp;lt;!-- JC: This links shouldn't be here: 1) Since this the developer section, it's assumed Visual Studio is installed. 2) The Dll are distributed within Slicer package --&amp;gt;&lt;br /&gt;
&amp;lt;!-- *** Optional: &amp;quot;Microsoft Visual C++ 2010 SP1 Redistributable Package&amp;quot;. Click [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x64] download, or [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x86] download.  [http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;amp;id=29 x86 (32bit) for VS 2008] --&amp;gt;&lt;br /&gt;
** '''Experimental''' (Visual Studio 2012): Use a desktop version such as [http://www.microsoft.com/visualstudio/eng/downloads#d-express-windows-desktop Visual Studio 2012 Express &amp;lt;b&amp;gt;for Windows Desktop&amp;lt;/b&amp;gt;] and (probably [http://www.microsoft.com/en-us/download/details.aspx?id=38188 Visual Studio 2012 Update 2]). Do &amp;lt;b&amp;gt;not&amp;lt;/b&amp;gt; use Visual Studio Express 2012 &amp;lt;em&amp;gt;for Windows 8&amp;lt;/em&amp;gt;. You must install [http://msdn.microsoft.com/en-us/library/ms717422.aspx Windows SDK], otherwise CMake will not even find the C compiler during configure. In CMake, choose &amp;lt;tt&amp;gt;Visual Studio 11 Win64&amp;lt;/tt&amp;gt; as generator.&lt;br /&gt;
&lt;br /&gt;
** '''Un-tested''': Cygwin suite (building with cygwin gcc not supported, but the cygwin shell environment can be used to run git, svn, etc).&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33400</id>
		<title>Documentation/Nightly/Developers/Build Instructions/Prerequisites</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33400"/>
		<updated>2013-06-18T19:22:39Z</updated>

		<summary type="html">&lt;p&gt;Imphead: /* Windows */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== PREREQUISITES ==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please check that the following tools are installed on your machine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = Qt libraries are '''required'''. Consider reading [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt|Qt requirements]].&lt;br /&gt;
| image= [[{{tool|logo|qt}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = CMake is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|cmake}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Git is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|git}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = SVN is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|svn}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Consider reading platform specific requirements listed below.&lt;br /&gt;
&lt;br /&gt;
=== Linux  ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Linux|here]]&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu / Debian ====&lt;br /&gt;
'''For Ubuntu 13.04''' note that you must download or install the standard cmake from [http://cmake.org/] because the version of cmake that comes with Ubuntu 13.04 cannot be used to build slicer.&lt;br /&gt;
&lt;br /&gt;
*Ubuntu, Debian squeeze, Debian testing (wheezy)  users, just type the following line in a terminal&lt;br /&gt;
 sudo apt-get install subversion git-core git-svn&lt;br /&gt;
 sudo apt-get install make gcc g++ libX11-dev libXt-dev libgl1-mesa-dev libosmesa6-dev libglu1-mesa-dev libfontconfig-dev libxrender-dev&lt;br /&gt;
&lt;br /&gt;
 mkdir ~/Support &amp;amp; cd Support     # This is where we will download and install required software&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner in your terminal, it will download and extract CMake&lt;br /&gt;
 cmake_package=&amp;quot;cmake-2.8.10.2-Linux-i386&amp;quot;; \&lt;br /&gt;
 wget http://www.cmake.org/files/v2.8/$cmake_package.tar.gz -v -O $cmake_package.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;
 tar -xzvf $cmake_package.tar.gz;&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner, symbolic links to cmake tools will be created in /usr/local/bin. &lt;br /&gt;
 # That way calling cmake, ctest, ... from the command line will resolve to this version of CMake.&lt;br /&gt;
 for tool in cmake ccmake ctest cpack; do sudo ln -s ~/$cmake_package/bin/$tool /usr/local/bin/$tool; done&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Debian squeeze has cmake 2.8.2 and Qt 4.6.3.  You will need to install newer versions of these packages.&lt;br /&gt;
* Ubuntu 10.04 has cmake 2.8.0 &lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== CentOS ====&lt;br /&gt;
*CentOS user type:&lt;br /&gt;
 yum install make gcc-c++ libX11-devel libXt-devel libXext-devel libGLU-devel mesa-libOSMesa-devel mesa-libGL-devel mesa-libGLU-devel ncurses&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Todo: This will have to be added in FAQ: Troubleshoot section&lt;br /&gt;
''glx-utils'' provides ''glxgears'' that can be used to test rendering&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MacOSX ===&lt;br /&gt;
* Mac Os X &amp;gt;= 10.5 (Leopard)&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
** For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) and/or recent XCode &amp;gt;= 4.5.X - [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.11 is required. See http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
&amp;lt;!-- Waiting for the official release, get the release candidate rc1 [http://www.cmake.org/files/v2.8/cmake-2.8.11-rc1-Darwin64-universal.tar.gz here]. For explanation, see [[Documentation/{{documentation/version}}/Developers/Build_Instructions#ld:_framework_not_found_QtWebKit|here]] and [[Documentation/{{documentation/version}}/Developers/Build_Instructions#On_MacOSX_10.8.2C_CMake_hangs_forever|here]]. These versions are also known to work: exact version 20130121-g92bd8 [http://www.cmake.org/files/dev/cmake-2.8.10.20130121-g92bd8-Darwin-universal.tar.gz here] (or version &amp;gt;= 2.8.10.20130220 [http://www.cmake.org/files/dev/?C=M;O=D here]).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 $ curl -O http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
 $ tar -xzvf cmake-2.8.11-Darwin64-universal.tar.gz --strip-components=1&lt;br /&gt;
&lt;br /&gt;
 $ CMake\ 2.8-11.app/Contents/bin/cmake --version&lt;br /&gt;
 cmake version 2.8.11&lt;br /&gt;
&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]] [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]] [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* XCode (for the SDK libs)&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Mac|here]]&lt;br /&gt;
* XQuartz - For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Newer Xcode versions (e.g. 4.3.2) use clang as the default compiler and '''clang is not compatible with ITK version 3'''.  You should use ITK version 4 with recent versions of Xcode.&lt;br /&gt;
** Xcode with gcc should ork with either version of ITK.&lt;br /&gt;
** OS X Mountain Lion: In Xcode 4.5 you now need to install command line tools (no longer included by default). Install within Xcode under the Xcode-&amp;gt;Preferences-&amp;gt;Downloads tab (otherwise git svn will give errors). Then you will need to install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Windows|here]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]]  [{{tool|download|cmake}}  CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]]  [{{tool|download|git}}  Git] &amp;gt;= 1.6.5.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* [https://code.google.com/p/msysgit/downloads/list?can=3 ''Git-X.X.X-preview2013XXXX.exe''] recommended.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Use of [http://code.google.com/p/tortoisegit/ TortoiseGit] is optional.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
** {{note}}For convenience, you could update the PATH variable so that ''git'' can be automatically discovered when configuring Slicer. If not, you will have to specify the GIT_EXECUTABLE at configure time.&lt;br /&gt;
* [http://www.sliksvn.com/en/download SlikSvn] &amp;lt;!-- or [http://www.cygwin.com cygwin's svn client]--&amp;gt;&lt;br /&gt;
* NSIS (optional): Needed if packaging Slicer - Click [http://nsis.sourceforge.net/Download here] to download.&lt;br /&gt;
* IDE&lt;br /&gt;
** '''Tested/Recommended''': [https://www.microsoft.com/visualstudio/en-us/products/2008-editions Microsoft Visual Studio 9 2008] (Any edition).&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=10986 here] to download SP1 and click [http://massmail.spl.harvard.edu/public-archives/slicer-devel/2012/008206.html here] to understand the motivation.&lt;br /&gt;
** '''Experimental''': The plan is to support [https://www.microsoft.com/visualstudio/en-us/products/2010-editions Microsoft Visual Studio 2010] (Any edition). {{note}} NOTE THAT EXPERIMENTAL MEANS THIS DOESN'T YET WORK :)&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=23691 here] to download SP1 and click [http://developer.qt.nokia.com/faq/answer/why_do_all_qt_4.7_applications_crash_when_using_windows_7_x64_w_vs_2010 here] to understand the motivation.&lt;br /&gt;
**** SP1 Compiler update. Click [https://www.microsoft.com/download/en/details.aspx?id=4422 here] to download and [http://slicer-devel.65872.n3.nabble.com/Windows-7-64Bits-Slicer-4-Build-with-VC-2010-problem-tt3730524.html#a3731661 here] to understand the motivation.&lt;br /&gt;
&amp;lt;!-- JC: This links shouldn't be here: 1) Since this the developer section, it's assumed Visual Studio is installed. 2) The Dll are distributed within Slicer package --&amp;gt;&lt;br /&gt;
&amp;lt;!-- *** Optional: &amp;quot;Microsoft Visual C++ 2010 SP1 Redistributable Package&amp;quot;. Click [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x64] download, or [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x86] download.  [http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;amp;id=29 x86 (32bit) for VS 2008] --&amp;gt;&lt;br /&gt;
** '''Experimental''' (Visual Studio 2012): Use a desktop version such as [http://www.microsoft.com/visualstudio/eng/downloads#d-express-windows-desktop Visual Studio 2012 Express &amp;lt;b&amp;gt;for Windows Desktop&amp;lt;/b&amp;gt;] and (probably [http://www.microsoft.com/en-us/download/details.aspx?id=38188 Visual Studio 2012 Update 2]. Do &amp;lt;b&amp;gt;not&amp;lt;/b&amp;gt; use Visual Studio Express 2012 &amp;lt;em&amp;gt;for Windows 8&amp;lt;/em&amp;gt;. You must install [http://msdn.microsoft.com/en-us/library/ms717422.aspx Windows SDK], otherwise CMake will not even find the C compiler during configure. In CMake, choose &amp;lt;tt&amp;gt;Visual Studio 11 Win64&amp;lt;/tt&amp;gt; as generator.&lt;br /&gt;
&lt;br /&gt;
** '''Un-tested''': Cygwin suite (building with cygwin gcc not supported, but the cygwin shell environment can be used to run git, svn, etc).&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33399</id>
		<title>Documentation/Nightly/Developers/Build Instructions/Prerequisites</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/Nightly/Developers/Build_Instructions/Prerequisites&amp;diff=33399"/>
		<updated>2013-06-18T19:17:00Z</updated>

		<summary type="html">&lt;p&gt;Imphead: /* Windows */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;{{documentation/versioncheck}}&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== PREREQUISITES ==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please check that the following tools are installed on your machine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = Qt libraries are '''required'''. Consider reading [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt|Qt requirements]].&lt;br /&gt;
| image= [[{{tool|logo|qt}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = CMake is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|cmake}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Git is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|git}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{mbox&lt;br /&gt;
| type = protection&lt;br /&gt;
| text = SVN is '''required'''.&lt;br /&gt;
| image= [[{{tool|logo|svn}}|x40px]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Consider reading platform specific requirements listed below.&lt;br /&gt;
&lt;br /&gt;
=== Linux  ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Linux|here]]&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu / Debian ====&lt;br /&gt;
'''For Ubuntu 13.04''' note that you must download or install the standard cmake from [http://cmake.org/] because the version of cmake that comes with Ubuntu 13.04 cannot be used to build slicer.&lt;br /&gt;
&lt;br /&gt;
*Ubuntu, Debian squeeze, Debian testing (wheezy)  users, just type the following line in a terminal&lt;br /&gt;
 sudo apt-get install subversion git-core git-svn&lt;br /&gt;
 sudo apt-get install make gcc g++ libX11-dev libXt-dev libgl1-mesa-dev libosmesa6-dev libglu1-mesa-dev libfontconfig-dev libxrender-dev&lt;br /&gt;
&lt;br /&gt;
 mkdir ~/Support &amp;amp; cd Support     # This is where we will download and install required software&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner in your terminal, it will download and extract CMake&lt;br /&gt;
 cmake_package=&amp;quot;cmake-2.8.10.2-Linux-i386&amp;quot;; \&lt;br /&gt;
 wget http://www.cmake.org/files/v2.8/$cmake_package.tar.gz -v -O $cmake_package.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;
 tar -xzvf $cmake_package.tar.gz;&lt;br /&gt;
&lt;br /&gt;
 # By copying this one-liner, symbolic links to cmake tools will be created in /usr/local/bin. &lt;br /&gt;
 # That way calling cmake, ctest, ... from the command line will resolve to this version of CMake.&lt;br /&gt;
 for tool in cmake ccmake ctest cpack; do sudo ln -s ~/$cmake_package/bin/$tool /usr/local/bin/$tool; done&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Debian squeeze has cmake 2.8.2 and Qt 4.6.3.  You will need to install newer versions of these packages.&lt;br /&gt;
* Ubuntu 10.04 has cmake 2.8.0 &lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== CentOS ====&lt;br /&gt;
*CentOS user type:&lt;br /&gt;
 yum install make gcc-c++ libX11-devel libXt-devel libXext-devel libGLU-devel mesa-libOSMesa-devel mesa-libGL-devel mesa-libGLU-devel ncurses&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Todo: This will have to be added in FAQ: Troubleshoot section&lt;br /&gt;
''glx-utils'' provides ''glxgears'' that can be used to test rendering&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MacOSX ===&lt;br /&gt;
* Mac Os X &amp;gt;= 10.5 (Leopard)&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
** For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) and/or recent XCode &amp;gt;= 4.5.X - [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.11 is required. See http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
&amp;lt;!-- Waiting for the official release, get the release candidate rc1 [http://www.cmake.org/files/v2.8/cmake-2.8.11-rc1-Darwin64-universal.tar.gz here]. For explanation, see [[Documentation/{{documentation/version}}/Developers/Build_Instructions#ld:_framework_not_found_QtWebKit|here]] and [[Documentation/{{documentation/version}}/Developers/Build_Instructions#On_MacOSX_10.8.2C_CMake_hangs_forever|here]]. These versions are also known to work: exact version 20130121-g92bd8 [http://www.cmake.org/files/dev/cmake-2.8.10.20130121-g92bd8-Darwin-universal.tar.gz here] (or version &amp;gt;= 2.8.10.20130220 [http://www.cmake.org/files/dev/?C=M;O=D here]).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 $ curl -O http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz&lt;br /&gt;
 $ tar -xzvf cmake-2.8.11-Darwin64-universal.tar.gz --strip-components=1&lt;br /&gt;
&lt;br /&gt;
 $ CMake\ 2.8-11.app/Contents/bin/cmake --version&lt;br /&gt;
 cmake version 2.8.11&lt;br /&gt;
&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
* [{{tool|download|svn}} Svn]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]] [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]] [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* XCode (for the SDK libs)&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Mac|here]]&lt;br /&gt;
* XQuartz - For Mac Os X &amp;gt;= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Newer Xcode versions (e.g. 4.3.2) use clang as the default compiler and '''clang is not compatible with ITK version 3'''.  You should use ITK version 4 with recent versions of Xcode.&lt;br /&gt;
** Xcode with gcc should ork with either version of ITK.&lt;br /&gt;
** OS X Mountain Lion: In Xcode 4.5 you now need to install command line tools (no longer included by default). Install within Xcode under the Xcode-&amp;gt;Preferences-&amp;gt;Downloads tab (otherwise git svn will give errors). Then you will need to install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
* [{{tool|download|cmake}} CMake] &amp;gt;= 2.8.9&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* [{{tool|download|git}} Git] &amp;gt;= 1.6.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* Qt 4.7.4 or 4.8.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Windows|here]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
*[[{{tool|logo|cmake}}|x16px]]  [{{tool|download|cmake}}  CMake] &amp;gt;= 2.8.9&lt;br /&gt;
*[[{{tool|logo|git}}|x16px]]  [{{tool|download|git}}  Git] &amp;gt;= 1.6.5.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
* [https://code.google.com/p/msysgit/downloads/list?can=3 ''Git-X.X.X-preview2013XXXX.exe''] recommended.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** Use of [http://code.google.com/p/tortoisegit/ TortoiseGit] is optional.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
** {{note}}For convenience, you could update the PATH variable so that ''git'' can be automatically discovered when configuring Slicer. If not, you will have to specify the GIT_EXECUTABLE at configure time.&lt;br /&gt;
* [http://www.sliksvn.com/en/download SlikSvn] &amp;lt;!-- or [http://www.cygwin.com cygwin's svn client]--&amp;gt;&lt;br /&gt;
* NSIS (optional): Needed if packaging Slicer - Click [http://nsis.sourceforge.net/Download here] to download.&lt;br /&gt;
* IDE&lt;br /&gt;
** '''Tested/Recommended''': [https://www.microsoft.com/visualstudio/en-us/products/2008-editions Microsoft Visual Studio 9 2008] (Any edition).&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=10986 here] to download SP1 and click [http://massmail.spl.harvard.edu/public-archives/slicer-devel/2012/008206.html here] to understand the motivation.&lt;br /&gt;
** '''Experimental''': The plan is to support [https://www.microsoft.com/visualstudio/en-us/products/2010-editions Microsoft Visual Studio 2010] (Any edition). {{note}} NOTE THAT EXPERIMENTAL MEANS THIS DOESN'T YET WORK :)&lt;br /&gt;
*** Make sure to install:&lt;br /&gt;
**** SP1. Click [http://www.microsoft.com/download/en/details.aspx?id=23691 here] to download SP1 and click [http://developer.qt.nokia.com/faq/answer/why_do_all_qt_4.7_applications_crash_when_using_windows_7_x64_w_vs_2010 here] to understand the motivation.&lt;br /&gt;
**** SP1 Compiler update. Click [https://www.microsoft.com/download/en/details.aspx?id=4422 here] to download and [http://slicer-devel.65872.n3.nabble.com/Windows-7-64Bits-Slicer-4-Build-with-VC-2010-problem-tt3730524.html#a3731661 here] to understand the motivation.&lt;br /&gt;
&amp;lt;!-- JC: This links shouldn't be here: 1) Since this the developer section, it's assumed Visual Studio is installed. 2) The Dll are distributed within Slicer package --&amp;gt;&lt;br /&gt;
&amp;lt;!-- *** Optional: &amp;quot;Microsoft Visual C++ 2010 SP1 Redistributable Package&amp;quot;. Click [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x64] download, or [http://www.microsoft.com/download/en/details.aspx?id=13523 here for x86] download.  [http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;amp;id=29 x86 (32bit) for VS 2008] --&amp;gt;&lt;br /&gt;
** '''Experimental''' (Visual Studio 2012): Use a desktop version such as [http://www.microsoft.com/visualstudio/eng/downloads#d-express-windows-desktop Visual Studio 2012 Express &amp;lt;b&amp;gt;for Windows Desktop&amp;lt;/b&amp;gt;] and (probably [http://www.microsoft.com/en-us/download/details.aspx?id=38188 Visual Studio 2012 Update 2]. Do &amp;lt;b&amp;gt;not&amp;lt;/b&amp;gt; use Visual Studio Express 2012 &amp;lt;em&amp;gt;for Windows 8&amp;lt;/em&amp;gt;. You must install [http://msdn.microsoft.com/en-us/library/ms717422.aspx Windows SDK], otherwise CMake will not even find the C compiler during configure.&lt;br /&gt;
&lt;br /&gt;
** '''Un-tested''': Cygwin suite (building with cygwin gcc not supported, but the cygwin shell environment can be used to run git, svn, etc).&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/4.2/Developers/Python_scripting&amp;diff=31086</id>
		<title>Documentation/4.2/Developers/Python scripting</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/4.2/Developers/Python_scripting&amp;diff=31086"/>
		<updated>2013-04-07T14:09:40Z</updated>

		<summary type="html">&lt;p&gt;Imphead: /* Python Interactor */ : wrong menu &amp;amp; shortcut, someone still need to address mac shortcut&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Background =&lt;br /&gt;
&lt;br /&gt;
This is an evolution of the [[Slicer3:Python|python implementation in slicer3]].  Slicer's APIs are now natively wrapped in python.  &lt;br /&gt;
&lt;br /&gt;
Topics like plotting are still experimental in slicer4.&lt;br /&gt;
&lt;br /&gt;
See [http://www.na-mic.org/Wiki/index.php/AHM2012-Slicer-Python this 2012 presentation on the state of python in slicer4].&lt;br /&gt;
&lt;br /&gt;
'''See [[4.0/Training#Slicer4_Programming_Tutorial|the python slicer4 tutorial for more examples]].'''&lt;br /&gt;
&lt;br /&gt;
[[Documentation/{{documentation/version}}/Developers/Tutorials/SelfTestModule|Slicer Self Tests]] can be written in python, and provide a good source of examples for manipulating the data, logic, and gui of slicer.&lt;br /&gt;
&lt;br /&gt;
= Usage options =&lt;br /&gt;
&lt;br /&gt;
==Python Interactor==&lt;br /&gt;
&lt;br /&gt;
Use View-&amp;gt;Python Interactor (Control-3 on window/linux, Command-P (?) on mac) to bring up the Qt-based console with access to the vtk, Qt, and Slicer wrapped APIs.&lt;br /&gt;
&lt;br /&gt;
Most python code can be installed and run from this window, but because it exists in the event driven Qt GUI environment, some operations like, like parallel processing or headless operation, are not easily supported.&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
Start slicer4 and bring up python console.  Copy the line below, but omit &amp;quot;&amp;lt;code&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;/code&amp;gt;&amp;quot; including the leading space (Python is space sensitive!), and Ctrl-v into the console (mouse paste may not work):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; loadVolume(slicer.app.slicerHome + &amp;quot;/share/Slicer-4.2/qt-loadable-modules/EMSegment/Testing/TestData/MRI-Human-Brain/small_MRIHumanBrain_T1_aligned.nrrd&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you see &amp;lt;code&amp;gt;True&amp;lt;/code&amp;gt; as the Python answer, you've loaded an MRI volume. Now, get the volume node for that volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; n = getNode('small_MRIHumanBrain_T1_aligned')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See the VTK type of the node and its address:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; n&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use the built-in print method of &amp;lt;code&amp;gt;vtkMRMLScalarVolumeNode&amp;lt;/code&amp;gt; for a human-readable digest of what it contains:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; print n&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can use Tab completion to see lists of methods for a module or object; the Python built-in &amp;lt;code&amp;gt;dir(...)&amp;lt;/code&amp;gt; function is also useful. For example, &amp;lt;code&amp;gt;dir(slicer.util)&amp;lt;/code&amp;gt; includes &amp;lt;code&amp;gt;loadVolume&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;getNode&amp;lt;/code&amp;gt;, which you've just used. Similarly, from &amp;lt;code&amp;gt;dir()&amp;lt;/code&amp;gt;, you can see all that's available in the module, including in fact all contents of &amp;lt;code&amp;gt;slicer.util&amp;lt;/code&amp;gt;, which has already been imported. That's why you can type &amp;lt;code&amp;gt;getNode&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;slicer.util.getNode&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Running a CLI from Python ====&lt;br /&gt;
&lt;br /&gt;
Here's an example to create a model from a volume using the [[Documentation/4.0/Modules/GrayscaleModelMaker|Grayscale Model Maker]]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def grayModel(volumeNode):&lt;br /&gt;
  parameters = {}&lt;br /&gt;
  parameters[&amp;quot;InputVolume&amp;quot;] = volumeNode.GetID()&lt;br /&gt;
  outModel = slicer.vtkMRMLModelNode()&lt;br /&gt;
  slicer.mrmlScene.AddNode( outModel )&lt;br /&gt;
  parameters[&amp;quot;OutputGeometry&amp;quot;] = outModel.GetID()&lt;br /&gt;
  grayMaker = slicer.modules.grayscalemodelmaker&lt;br /&gt;
  return (slicer.cli.run(grayMaker, None, parameters))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To try this, download the MRHead dataset from the [[Documentation/4.0/Modules/SampleData|Sample Data]] and paste the code into the python console and then run this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
v = getNode('MRHead')&lt;br /&gt;
cliNode = grayModel(v)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the CLI module runs in a background thread, so the call to grayModel will return right away.  But the slicer.cli.run call returns a cliNode (an instance of [http://slicer.org/doc/html/classvtkMRMLCommandLineModuleNode.html vtkMRMLCommandLineModuleNode]) which can be used to monitor the progress of the module.&lt;br /&gt;
&lt;br /&gt;
'' Passing Fiducials to CLIs via a Python Script ''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
import SampleData&lt;br /&gt;
sampleDataLogic = SampleData.SampleDataLogic()&lt;br /&gt;
head = sampleDataLogic.downloadMRHead()&lt;br /&gt;
volumesLogic = slicer.modules.volumes.logic()&lt;br /&gt;
headLabel = volumesLogic.CreateLabelVolume(slicer.mrmlScene, head, 'head-label')&lt;br /&gt;
&lt;br /&gt;
fiducialNode = slicer.vtkMRMLAnnotationFiducialNode()&lt;br /&gt;
fiducialNode.SetFiducialWorldCoordinates((1,0,5))&lt;br /&gt;
fiducialNode.SetName('Seed Point')&lt;br /&gt;
fiducialNode.Initialize(slicer.mrmlScene)&lt;br /&gt;
fiducialsList = getNode('Fiducials List')&lt;br /&gt;
&lt;br /&gt;
params = {'inputVolume': head.GetID(), 'outputVolume': headLabel.GetID(), 'seed' : fiducialsList.GetID(), 'iterations' : 2} &lt;br /&gt;
&lt;br /&gt;
cliNode = slicer.cli.run(slicer.modules.simpleregiongrowingsegmentation, None, params , wait_for_completion=True)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'' Checking Status''&lt;br /&gt;
&lt;br /&gt;
In this example we create a simple callback that will be called whenever the cliNode is modified.  The status will tell you if the nodes is Pending, Running, or Completed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def printStatus(caller, event):&lt;br /&gt;
  print(&amp;quot;Got a %s from a %s&amp;quot; % (event, caller.GetClassName()))&lt;br /&gt;
  if caller.IsA('vtkMRMLCommandLineModuleNode'):&lt;br /&gt;
    print(&amp;quot;Status is %s&amp;quot; % caller.GetStatusString())&lt;br /&gt;
&lt;br /&gt;
cliNode.AddObserver('ModifiedEvent', printStatus)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Accessing slice vtkRenderWindows from slice views ====&lt;br /&gt;
&lt;br /&gt;
The example below shows how to get the rendered slice window.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lm = slicer.app.layoutManager()&lt;br /&gt;
redWidget = lm.sliceWidget('Red')&lt;br /&gt;
redView = redWidget.sliceView()&lt;br /&gt;
wti = vtk.vtkWindowToImageFilter()&lt;br /&gt;
wti.SetInput(redView.renderWindow())&lt;br /&gt;
wti.Update()&lt;br /&gt;
v = vtk.vtkImageViewer()&lt;br /&gt;
v.SetColorWindow(255)&lt;br /&gt;
v.SetColorLevel(128)&lt;br /&gt;
v.SetInputConnection(wti.GetOutputPort())&lt;br /&gt;
v.Render()&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO: some more samples of the Qt console''&lt;br /&gt;
&lt;br /&gt;
== In iPython ==&lt;br /&gt;
&lt;br /&gt;
'''Important: The example below was developed for an early beta version of slicer4 and is not supported in Slicer 4.0 or 4.1'''&lt;br /&gt;
&lt;br /&gt;
See [http://slicer-devel.65872.n3.nabble.com/import-slicer-problem-in-using-python-in-the-shell-launched-using-quot-slicer-xterm-amp-quot-td3968880.html this thread for information on adapting this approach to Slicer 4.1].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://ipython.scipy.org iPython] is a powerful shell and can also be used to access the vtk and slicer APIs (but not Qt at the moment).&lt;br /&gt;
&lt;br /&gt;
As of Slicer4 beta in February 2011, it is possible to use these steps for installation.  This has only been tested on a ubuntu linux system so far.&lt;br /&gt;
&lt;br /&gt;
These instructions assume you have a Slicer4-superbuild directory created according to the [[Slicer4:Build_Instructions|Slicer4 Build Instructions]].&lt;br /&gt;
&lt;br /&gt;
See the [http://matplotlib.sourceforge.net|matplotlib] website for more example plot types.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
* Get readline - it will make iPython more useful.&lt;br /&gt;
&lt;br /&gt;
 # do this before building slicer4 - or do &amp;quot;cd Slicer4-superbuild/; rm -rf python* ; make&amp;quot;&lt;br /&gt;
 sudo apt-get install libreadline6-dev&lt;br /&gt;
&lt;br /&gt;
cd to your Slicer4-superbuild directory for the rest of these steps&lt;br /&gt;
&lt;br /&gt;
* Install the vtk package in the python tree&lt;br /&gt;
 # TODO: this should be done in superbuild script&lt;br /&gt;
 (cd ./VTK-build/Wrapping/Python;  ../../../Slicer-build/Slicer4 --launch ../../../python-build/bin/python setup.py install)&lt;br /&gt;
&lt;br /&gt;
* Install ipython:&lt;br /&gt;
&lt;br /&gt;
 git clone git://github.com/ipython/ipython.git&lt;br /&gt;
 (cd ./ipython; git checkout 0.10.2)&lt;br /&gt;
 (cd ./ipython;  ../Slicer-build/Slicer4 --launch ../python-build/bin/python setup.py install)&lt;br /&gt;
&lt;br /&gt;
* Install matplotlib (remove the source after installing so python import will not get confused by it.)&lt;br /&gt;
&lt;br /&gt;
 git clone git://github.com/pieper/matplotlib.git&lt;br /&gt;
 (cd ./matplotlib;  ../Slicer-build/Slicer4 --launch ../python-build/bin/python setup.py install)&lt;br /&gt;
 rm -rf matplotlib&lt;br /&gt;
&lt;br /&gt;
=== Now try it! ===&lt;br /&gt;
[[image:Slicer4-matplotlib-2011-02-26.png|thumb|300px|right|python plotting from ipython using slicer libraries]]&lt;br /&gt;
&lt;br /&gt;
Launch an xterm with all the paths set correctly to find the slicer python packages&lt;br /&gt;
&lt;br /&gt;
 ./Slicer-build/Slicer4 --launch xterm &amp;amp;&lt;br /&gt;
&lt;br /&gt;
Now, ''inside the xterm'' launch ipython&lt;br /&gt;
&lt;br /&gt;
 ./python-build/bin/ipython&lt;br /&gt;
&lt;br /&gt;
Inside ipython you can past the following script that does:&lt;br /&gt;
* create a mrml scene and add a volume&lt;br /&gt;
* make a numpy aray from the image data&lt;br /&gt;
* do calculations in numpy and vtk for comparision&lt;br /&gt;
* make a histogram plot of the data&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
import vtk&lt;br /&gt;
import slicer&lt;br /&gt;
mrml = slicer.vtkMRMLScene()&lt;br /&gt;
vl = slicer.vtkSlicerVolumesLogic()&lt;br /&gt;
vl.SetAndObserveMRMLScene(mrml)&lt;br /&gt;
n = vl.AddArchetypeVolume('../Slicer4/Testing/Data/Input/MRHeadResampled.nhdr', 'CTC')&lt;br /&gt;
i = n.GetImageData()&lt;br /&gt;
print (i.GetScalarRange())&lt;br /&gt;
&lt;br /&gt;
import vtk.util.numpy_support&lt;br /&gt;
a = vtk.util.numpy_support.vtk_to_numpy(i.GetPointData().GetScalars())&lt;br /&gt;
print(a.min(),a.max())&lt;br /&gt;
&lt;br /&gt;
import matplotlib&lt;br /&gt;
import matplotlib.pyplot&lt;br /&gt;
n, bins, patches = matplotlib.pyplot.hist(a, 50, facecolor='g', alpha=0.75)&lt;br /&gt;
matplotlib.pyplot.show()&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all goes well, you should see an image like the one shown here.&lt;br /&gt;
&lt;br /&gt;
=== Parallel Processing === &lt;br /&gt;
&lt;br /&gt;
In the shell, run this to install [http://packages.python.org/joblib/ joblib]&lt;br /&gt;
&lt;br /&gt;
 wget http://pypi.python.org/packages/source/j/joblib/joblib-0.4.6.dev.tar.gz&lt;br /&gt;
 tar xvfz joblib-0.4.6.dev.tar.gz&lt;br /&gt;
 (cd ./joblib-0.4.6.dev;  ../Slicer-build/Slicer4 --launch ../python-build/bin/python setup.py install)&lt;br /&gt;
&lt;br /&gt;
Then in ipython you can run this example: &lt;br /&gt;
&lt;br /&gt;
 from joblib import *&lt;br /&gt;
 from math import *&lt;br /&gt;
 for jobs in xrange(1,8):&lt;br /&gt;
   print (jobs, Parallel(n_jobs=jobs)(delayed(sqrt)(i**2) for i in range(10000))[-1])&lt;br /&gt;
&lt;br /&gt;
=== Packaging/Saving Scenes ===&lt;br /&gt;
&lt;br /&gt;
A basic example.  The following packages all of the scene's referenced files into one specified folder.  All images, csvs, volumes, etc. (everything except the scene .mrml) are copied into the folder &amp;quot;&amp;lt;package dir&amp;gt;/data.&amp;quot;  The scene .mrml is in the &amp;quot;&amp;lt;package dir&amp;gt;&amp;quot; directory. &lt;br /&gt;
&lt;br /&gt;
 import os &lt;br /&gt;
 # Library for OS specific routines&lt;br /&gt;
 &lt;br /&gt;
 tempDir = os.path.join(slicer.app.slicerHome, ‘testScene’) &lt;br /&gt;
 # Put our temp scene directory into the slicer directory.  os.path.join takes care of slash issues that you may encounter with UNIX-Windows compatibility.    &lt;br /&gt;
 &lt;br /&gt;
 os.mkdir(tempDir) &lt;br /&gt;
&lt;br /&gt;
 l = slicer.app.applicationLogic()&lt;br /&gt;
 l.SaveSceneToSlicerDataBundleDirectory(tempDir, None)&lt;br /&gt;
&lt;br /&gt;
=== Loading DICOM Sets ===&lt;br /&gt;
&lt;br /&gt;
The approach is to point Slicer's DICOM database to the directory of the new files.  The command appends the existing database with the files found in the inputted directory.&lt;br /&gt;
 i = ctk.ctkDICOMIndexer()&lt;br /&gt;
 i.addDirectory(slicer.dicomDatabase, '/yourDICOMdir/')&lt;br /&gt;
&lt;br /&gt;
One approach to begin the load process is to call on the DICOM module, which will automatically open the &amp;quot;DICOM Details&amp;quot; popup.  However, if the popup has been used already in the current Slicer session, a refresh may not occur and a restart may be required.&lt;br /&gt;
 m = slicer.util.mainWindow()&lt;br /&gt;
 m.moduleSelector().selectModule('DICOM')&lt;br /&gt;
&lt;br /&gt;
=Issues=&lt;br /&gt;
* matplotlib currently uses Tk to show the window on Linux and it does not handle pan/zoom events correctly.  Ideally there would be a PythonQt wrapper for the plots and this is probably required for use on windows (and maybe mac).&lt;br /&gt;
&lt;br /&gt;
* the matplotlib window is in the same thread with the ipython window so you cannot keep the plot open while working on the next one.  However you can save the plot to a file (png, pdf, etc...) and look at it with another program while working in ipython.&lt;br /&gt;
&lt;br /&gt;
* in slicer4 the PythonQt package is loaded as 'qt', however matplotlib tries running 'import qt' as a way to determine if it is running in PyQt version 3.  Because of this a patched version of matplotlib is required (see [https://github.com/pieper/matplotlib/commit/23bca600c27924450128bfe6e68196eb87cf0654 this diff])&lt;br /&gt;
&lt;br /&gt;
* Tested in Windows 7: Python 2.6.6 (used in Slicer 4.1) has errors in referencing its XML DOM parsers, such as ElementTree.  This is a Windows-specific issue -- the same code works in Linux Ubuntu.  Solution thus far is to write your own XML parser.&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/4.2/Developers/Python_scripting&amp;diff=31079</id>
		<title>Documentation/4.2/Developers/Python scripting</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/4.2/Developers/Python_scripting&amp;diff=31079"/>
		<updated>2013-04-06T01:13:59Z</updated>

		<summary type="html">&lt;p&gt;Imphead: Example didn't actually work. Explain type and print. The new file name is awfully long however. Explained that slicer.utils.* is pre-imported. Also, explained that mouse paste may not work.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Background =&lt;br /&gt;
&lt;br /&gt;
This is an evolution of the [[Slicer3:Python|python implementation in slicer3]].  Slicer's APIs are now natively wrapped in python.  &lt;br /&gt;
&lt;br /&gt;
Topics like plotting are still experimental in slicer4.&lt;br /&gt;
&lt;br /&gt;
See [http://www.na-mic.org/Wiki/index.php/AHM2012-Slicer-Python this 2012 presentation on the state of python in slicer4].&lt;br /&gt;
&lt;br /&gt;
'''See [[4.0/Training#Slicer4_Programming_Tutorial|the python slicer4 tutorial for more examples]].'''&lt;br /&gt;
&lt;br /&gt;
[[Documentation/{{documentation/version}}/Developers/Tutorials/SelfTestModule|Slicer Self Tests]] can be written in python, and provide a good source of examples for manipulating the data, logic, and gui of slicer.&lt;br /&gt;
&lt;br /&gt;
= Usage options =&lt;br /&gt;
&lt;br /&gt;
==Python Interactor==&lt;br /&gt;
&lt;br /&gt;
Use the Window-&amp;gt;Python Interactor (Control-P on window/linux, Command-P on mac) to bring up the Qt-based console with access to the vtk, Qt, and Slicer wrapped APIs.&lt;br /&gt;
&lt;br /&gt;
Most python code can be installed and run from this window, but because it exists in the event driven Qt GUI environment, some operations like, like parallel processing or headless operation, are not easily supported.&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
Start slicer4 and bring up python console.  Copy the line below, but omit &amp;quot;&amp;lt;code&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;lt;/code&amp;gt;&amp;quot; including the leading space (Python is space sensitive!), and Ctrl-v into the console (mouse paste may not work):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; loadVolume(slicer.app.slicerHome + &amp;quot;/share/Slicer-4.2/qt-loadable-modules/EMSegment/Testing/TestData/MRI-Human-Brain/small_MRIHumanBrain_T1_aligned.nrrd&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you see &amp;lt;code&amp;gt;True&amp;lt;/code&amp;gt; as the Python answer, you've loaded an MRI volume. Now, get the volume node for that volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; n = getNode('small_MRIHumanBrain_T1_aligned')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See the VTK type of the node and its address:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; n&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use the built-in print method of &amp;lt;code&amp;gt;vtkMRMLScalarVolumeNode&amp;lt;/code&amp;gt; for a human-readable digest of what it contains:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; print n&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can use Tab completion to see lists of methods for a module or object; the Python built-in &amp;lt;code&amp;gt;dir(...)&amp;lt;/code&amp;gt; function is also useful. For example, &amp;lt;code&amp;gt;dir(slicer.util)&amp;lt;/code&amp;gt; includes &amp;lt;code&amp;gt;loadVolume&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;getNode&amp;lt;/code&amp;gt;, which you've just used. Similarly, from &amp;lt;code&amp;gt;dir()&amp;lt;/code&amp;gt;, you can see all that's available in the module, including in fact all contents of &amp;lt;code&amp;gt;slicer.util&amp;lt;/code&amp;gt;, which has already been imported. That's why you can type &amp;lt;code&amp;gt;getNode&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;slicer.util.getNode&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Running a CLI from Python ====&lt;br /&gt;
&lt;br /&gt;
Here's an example to create a model from a volume using the [[Documentation/4.0/Modules/GrayscaleModelMaker|Grayscale Model Maker]]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def grayModel(volumeNode):&lt;br /&gt;
  parameters = {}&lt;br /&gt;
  parameters[&amp;quot;InputVolume&amp;quot;] = volumeNode.GetID()&lt;br /&gt;
  outModel = slicer.vtkMRMLModelNode()&lt;br /&gt;
  slicer.mrmlScene.AddNode( outModel )&lt;br /&gt;
  parameters[&amp;quot;OutputGeometry&amp;quot;] = outModel.GetID()&lt;br /&gt;
  grayMaker = slicer.modules.grayscalemodelmaker&lt;br /&gt;
  return (slicer.cli.run(grayMaker, None, parameters))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To try this, download the MRHead dataset from the [[Documentation/4.0/Modules/SampleData|Sample Data]] and paste the code into the python console and then run this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
v = getNode('MRHead')&lt;br /&gt;
cliNode = grayModel(v)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the CLI module runs in a background thread, so the call to grayModel will return right away.  But the slicer.cli.run call returns a cliNode (an instance of [http://slicer.org/doc/html/classvtkMRMLCommandLineModuleNode.html vtkMRMLCommandLineModuleNode]) which can be used to monitor the progress of the module.&lt;br /&gt;
&lt;br /&gt;
'' Passing Fiducials to CLIs via a Python Script ''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
import SampleData&lt;br /&gt;
sampleDataLogic = SampleData.SampleDataLogic()&lt;br /&gt;
head = sampleDataLogic.downloadMRHead()&lt;br /&gt;
volumesLogic = slicer.modules.volumes.logic()&lt;br /&gt;
headLabel = volumesLogic.CreateLabelVolume(slicer.mrmlScene, head, 'head-label')&lt;br /&gt;
&lt;br /&gt;
fiducialNode = slicer.vtkMRMLAnnotationFiducialNode()&lt;br /&gt;
fiducialNode.SetFiducialWorldCoordinates((1,0,5))&lt;br /&gt;
fiducialNode.SetName('Seed Point')&lt;br /&gt;
fiducialNode.Initialize(slicer.mrmlScene)&lt;br /&gt;
fiducialsList = getNode('Fiducials List')&lt;br /&gt;
&lt;br /&gt;
params = {'inputVolume': head.GetID(), 'outputVolume': headLabel.GetID(), 'seed' : fiducialsList.GetID(), 'iterations' : 2} &lt;br /&gt;
&lt;br /&gt;
cliNode = slicer.cli.run(slicer.modules.simpleregiongrowingsegmentation, None, params , wait_for_completion=True)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'' Checking Status''&lt;br /&gt;
&lt;br /&gt;
In this example we create a simple callback that will be called whenever the cliNode is modified.  The status will tell you if the nodes is Pending, Running, or Completed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
def printStatus(caller, event):&lt;br /&gt;
  print(&amp;quot;Got a %s from a %s&amp;quot; % (event, caller.GetClassName()))&lt;br /&gt;
  if caller.IsA('vtkMRMLCommandLineModuleNode'):&lt;br /&gt;
    print(&amp;quot;Status is %s&amp;quot; % caller.GetStatusString())&lt;br /&gt;
&lt;br /&gt;
cliNode.AddObserver('ModifiedEvent', printStatus)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Accessing slice vtkRenderWindows from slice views ====&lt;br /&gt;
&lt;br /&gt;
The example below shows how to get the rendered slice window.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lm = slicer.app.layoutManager()&lt;br /&gt;
redWidget = lm.sliceWidget('Red')&lt;br /&gt;
redView = redWidget.sliceView()&lt;br /&gt;
wti = vtk.vtkWindowToImageFilter()&lt;br /&gt;
wti.SetInput(redView.renderWindow())&lt;br /&gt;
wti.Update()&lt;br /&gt;
v = vtk.vtkImageViewer()&lt;br /&gt;
v.SetColorWindow(255)&lt;br /&gt;
v.SetColorLevel(128)&lt;br /&gt;
v.SetInputConnection(wti.GetOutputPort())&lt;br /&gt;
v.Render()&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO: some more samples of the Qt console''&lt;br /&gt;
&lt;br /&gt;
== In iPython ==&lt;br /&gt;
&lt;br /&gt;
'''Important: The example below was developed for an early beta version of slicer4 and is not supported in Slicer 4.0 or 4.1'''&lt;br /&gt;
&lt;br /&gt;
See [http://slicer-devel.65872.n3.nabble.com/import-slicer-problem-in-using-python-in-the-shell-launched-using-quot-slicer-xterm-amp-quot-td3968880.html this thread for information on adapting this approach to Slicer 4.1].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://ipython.scipy.org iPython] is a powerful shell and can also be used to access the vtk and slicer APIs (but not Qt at the moment).&lt;br /&gt;
&lt;br /&gt;
As of Slicer4 beta in February 2011, it is possible to use these steps for installation.  This has only been tested on a ubuntu linux system so far.&lt;br /&gt;
&lt;br /&gt;
These instructions assume you have a Slicer4-superbuild directory created according to the [[Slicer4:Build_Instructions|Slicer4 Build Instructions]].&lt;br /&gt;
&lt;br /&gt;
See the [http://matplotlib.sourceforge.net|matplotlib] website for more example plot types.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
* Get readline - it will make iPython more useful.&lt;br /&gt;
&lt;br /&gt;
 # do this before building slicer4 - or do &amp;quot;cd Slicer4-superbuild/; rm -rf python* ; make&amp;quot;&lt;br /&gt;
 sudo apt-get install libreadline6-dev&lt;br /&gt;
&lt;br /&gt;
cd to your Slicer4-superbuild directory for the rest of these steps&lt;br /&gt;
&lt;br /&gt;
* Install the vtk package in the python tree&lt;br /&gt;
 # TODO: this should be done in superbuild script&lt;br /&gt;
 (cd ./VTK-build/Wrapping/Python;  ../../../Slicer-build/Slicer4 --launch ../../../python-build/bin/python setup.py install)&lt;br /&gt;
&lt;br /&gt;
* Install ipython:&lt;br /&gt;
&lt;br /&gt;
 git clone git://github.com/ipython/ipython.git&lt;br /&gt;
 (cd ./ipython; git checkout 0.10.2)&lt;br /&gt;
 (cd ./ipython;  ../Slicer-build/Slicer4 --launch ../python-build/bin/python setup.py install)&lt;br /&gt;
&lt;br /&gt;
* Install matplotlib (remove the source after installing so python import will not get confused by it.)&lt;br /&gt;
&lt;br /&gt;
 git clone git://github.com/pieper/matplotlib.git&lt;br /&gt;
 (cd ./matplotlib;  ../Slicer-build/Slicer4 --launch ../python-build/bin/python setup.py install)&lt;br /&gt;
 rm -rf matplotlib&lt;br /&gt;
&lt;br /&gt;
=== Now try it! ===&lt;br /&gt;
[[image:Slicer4-matplotlib-2011-02-26.png|thumb|300px|right|python plotting from ipython using slicer libraries]]&lt;br /&gt;
&lt;br /&gt;
Launch an xterm with all the paths set correctly to find the slicer python packages&lt;br /&gt;
&lt;br /&gt;
 ./Slicer-build/Slicer4 --launch xterm &amp;amp;&lt;br /&gt;
&lt;br /&gt;
Now, ''inside the xterm'' launch ipython&lt;br /&gt;
&lt;br /&gt;
 ./python-build/bin/ipython&lt;br /&gt;
&lt;br /&gt;
Inside ipython you can past the following script that does:&lt;br /&gt;
* create a mrml scene and add a volume&lt;br /&gt;
* make a numpy aray from the image data&lt;br /&gt;
* do calculations in numpy and vtk for comparision&lt;br /&gt;
* make a histogram plot of the data&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
import vtk&lt;br /&gt;
import slicer&lt;br /&gt;
mrml = slicer.vtkMRMLScene()&lt;br /&gt;
vl = slicer.vtkSlicerVolumesLogic()&lt;br /&gt;
vl.SetAndObserveMRMLScene(mrml)&lt;br /&gt;
n = vl.AddArchetypeVolume('../Slicer4/Testing/Data/Input/MRHeadResampled.nhdr', 'CTC')&lt;br /&gt;
i = n.GetImageData()&lt;br /&gt;
print (i.GetScalarRange())&lt;br /&gt;
&lt;br /&gt;
import vtk.util.numpy_support&lt;br /&gt;
a = vtk.util.numpy_support.vtk_to_numpy(i.GetPointData().GetScalars())&lt;br /&gt;
print(a.min(),a.max())&lt;br /&gt;
&lt;br /&gt;
import matplotlib&lt;br /&gt;
import matplotlib.pyplot&lt;br /&gt;
n, bins, patches = matplotlib.pyplot.hist(a, 50, facecolor='g', alpha=0.75)&lt;br /&gt;
matplotlib.pyplot.show()&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If all goes well, you should see an image like the one shown here.&lt;br /&gt;
&lt;br /&gt;
=== Parallel Processing === &lt;br /&gt;
&lt;br /&gt;
In the shell, run this to install [http://packages.python.org/joblib/ joblib]&lt;br /&gt;
&lt;br /&gt;
 wget http://pypi.python.org/packages/source/j/joblib/joblib-0.4.6.dev.tar.gz&lt;br /&gt;
 tar xvfz joblib-0.4.6.dev.tar.gz&lt;br /&gt;
 (cd ./joblib-0.4.6.dev;  ../Slicer-build/Slicer4 --launch ../python-build/bin/python setup.py install)&lt;br /&gt;
&lt;br /&gt;
Then in ipython you can run this example: &lt;br /&gt;
&lt;br /&gt;
 from joblib import *&lt;br /&gt;
 from math import *&lt;br /&gt;
 for jobs in xrange(1,8):&lt;br /&gt;
   print (jobs, Parallel(n_jobs=jobs)(delayed(sqrt)(i**2) for i in range(10000))[-1])&lt;br /&gt;
&lt;br /&gt;
=== Packaging/Saving Scenes ===&lt;br /&gt;
&lt;br /&gt;
A basic example.  The following packages all of the scene's referenced files into one specified folder.  All images, csvs, volumes, etc. (everything except the scene .mrml) are copied into the folder &amp;quot;&amp;lt;package dir&amp;gt;/data.&amp;quot;  The scene .mrml is in the &amp;quot;&amp;lt;package dir&amp;gt;&amp;quot; directory. &lt;br /&gt;
&lt;br /&gt;
 import os &lt;br /&gt;
 # Library for OS specific routines&lt;br /&gt;
 &lt;br /&gt;
 tempDir = os.path.join(slicer.app.slicerHome, ‘testScene’) &lt;br /&gt;
 # Put our temp scene directory into the slicer directory.  os.path.join takes care of slash issues that you may encounter with UNIX-Windows compatibility.    &lt;br /&gt;
 &lt;br /&gt;
 os.mkdir(tempDir) &lt;br /&gt;
&lt;br /&gt;
 l = slicer.app.applicationLogic()&lt;br /&gt;
 l.SaveSceneToSlicerDataBundleDirectory(tempDir, None)&lt;br /&gt;
&lt;br /&gt;
=== Loading DICOM Sets ===&lt;br /&gt;
&lt;br /&gt;
The approach is to point Slicer's DICOM database to the directory of the new files.  The command appends the existing database with the files found in the inputted directory.&lt;br /&gt;
 i = ctk.ctkDICOMIndexer()&lt;br /&gt;
 i.addDirectory(slicer.dicomDatabase, '/yourDICOMdir/')&lt;br /&gt;
&lt;br /&gt;
One approach to begin the load process is to call on the DICOM module, which will automatically open the &amp;quot;DICOM Details&amp;quot; popup.  However, if the popup has been used already in the current Slicer session, a refresh may not occur and a restart may be required.&lt;br /&gt;
 m = slicer.util.mainWindow()&lt;br /&gt;
 m.moduleSelector().selectModule('DICOM')&lt;br /&gt;
&lt;br /&gt;
=Issues=&lt;br /&gt;
* matplotlib currently uses Tk to show the window on Linux and it does not handle pan/zoom events correctly.  Ideally there would be a PythonQt wrapper for the plots and this is probably required for use on windows (and maybe mac).&lt;br /&gt;
&lt;br /&gt;
* the matplotlib window is in the same thread with the ipython window so you cannot keep the plot open while working on the next one.  However you can save the plot to a file (png, pdf, etc...) and look at it with another program while working in ipython.&lt;br /&gt;
&lt;br /&gt;
* in slicer4 the PythonQt package is loaded as 'qt', however matplotlib tries running 'import qt' as a way to determine if it is running in PyQt version 3.  Because of this a patched version of matplotlib is required (see [https://github.com/pieper/matplotlib/commit/23bca600c27924450128bfe6e68196eb87cf0654 this diff])&lt;br /&gt;
&lt;br /&gt;
* Tested in Windows 7: Python 2.6.6 (used in Slicer 4.1) has errors in referencing its XML DOM parsers, such as ElementTree.  This is a Windows-specific issue -- the same code works in Linux Ubuntu.  Solution thus far is to write your own XML parser.&lt;/div&gt;</summary>
		<author><name>Imphead</name></author>
		
	</entry>
</feed>