Documentation/Nightly/Developers/Build Instructions/Prerequisites
For the latest Slicer documentation, visit the read-the-docs. |
Contents
PREREQUISITES
Consider reading platform specific requirements listed below.
Linux
- CMake >= 3.x
- Git >= 1.7.10
- Svn >= 1.7
- Qt 4.8.6. See details here. See some history here (Note that any version >= Qt 4.7.4 can be used only for Ubuntu < 12.04)
Debian
- Debian squeeze/wheezy/testing(jessie) users, start by pasting the following lines in a terminal
sudo apt-get install subversion git-core git-svn sudo apt-get install make gcc g++ libx11-dev libxt-dev libgl1-mesa-dev libosmesa6-dev libglu1-mesa-dev libfontconfig-dev libxrender-dev libncurses5-dev sudo apt-get install cmake sudo apt-get install qt-sdk
Ubuntu
- Ubuntu users, start by pasting the following lines in a terminal
sudo apt-get install subversion git-core git-svn sudo apt-get install make gcc g++ libx11-dev libxt-dev libgl1-mesa-dev libglu1-mesa-dev libfontconfig-dev libxrender-dev libncurses5-dev
cmake: For Ubuntu < 12.04:
sudo apt-get install cmake # Only for Ubuntu < 12.04
cmake: For Ubuntu >= 12.04:
You *MUST download the standard CMake binary* from http://cmake.org/download because the distributed version of CMake cannot be used to build slicer.
For example, on a 64-bit system, you will download the file cmake-X.Y.Z-Linux-x86_64.tar.gz
associated with the latest stable version.
See here for more details.
libosmesa6-dev: For Ubuntu < 14.04.3:
sudo apt-get install libosmesa6-dev
- On Ubuntu 14.04.3 LTS, attempting to install libosmesa6-dev results in an error.
The following packages have unmet dependencies: libosmesa6-dev : Depends: libosmesa6 (= 10.1.3-0ubuntu0.4) but it is not going to be installed E: Unable to correct problems, you have held broken packages.
For more details, see Bug 1424059.
- Slicer compiles successfully without that package, but VTK_OPENGL_HAS_OSMESA is disabled.
qt: For Ubuntu 12.04, 12.10, 13.04 and 13.10: Qt 4 >= 4.8.5 MUST be used. See reference below for more details.
cd ~/Support # This is where we will build Qt and dependent libraries # Keep track of our working directory cwd=$(pwd) # This will download, then build zlib and openssl in the current folder rm -f get-and-build-openssl-for-slicer.sh wget https://gist.githubusercontent.com/jcfr/9513568/raw/21f4e4cabca5ad03435ecc17ab546dab5e2c1a2f/get-and-build-openssl-for-slicer.sh chmod u+x get-and-build-openssl-for-slicer.sh ./get-and-build-openssl-for-slicer.sh # This will download Qt source in the current folder wget http://packages.kitware.com/download/item/6175/qt-everywhere-opensource-src-4.8.6.tar.gz md5=`md5sum ./qt-everywhere-opensource-src-4.8.6.tar.gz | awk '{ print $1 }'` && [ $md5 == "2edbe4d6c2eff33ef91732602f3518eb" ] || echo "MD5 mismatch. Problem downloading Qt" # This will configure and build Qt in RELEASE against the zlib and openssl previously built tar -xzvf qt-everywhere-opensource-src-4.8.6.tar.gz mv qt-everywhere-opensource-src-4.8.6 qt-everywhere-opensource-release-src-4.8.6 mkdir qt-everywhere-opensource-release-build-4.8.6 cd qt-everywhere-opensource-release-src-4.8.6 ./configure -prefix $cwd/qt-everywhere-opensource-release-build-4.8.6 \ -release \ -opensource -confirm-license \ -no-qt3support \ -webkit \ -nomake examples -nomake demos \ -openssl -I $cwd/openssl-1.0.1e/include -L $cwd/openssl-1.0.1e \ && make -j7 && make install
CentOS
- CentOS user type:
yum install make gcc-c++ libX11-devel libXt-devel libXrender-devel libXext-devel libGLU-devel mesa-libOSMesa-devel mesa-libGL-devel mesa-libGLU-devel ncurses
MacOSX
MacOSX 10.9.4 (Mavericks)
(1) Make sure to install this update: http://support.apple.com/kb/DL1754
(2) Use CMake 3.0.1 - it is known to be working and is supported (if you want to use CMake already installed on your system, 2.8.12.2 is known to work on Mac OS X 10.9.5)
- Mac Os X >= 10.5 (Leopard)
- CMake >= 2.8.9
- For Mac Os X >= 10.8 (Mountain Lion) and/or recent XCode >= 4.5.X - CMake >= 2.8.11 is required. See http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz
$ curl -O http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz $ tar -xzvf cmake-2.8.11-Darwin64-universal.tar.gz --strip-components=1
$ CMake\ 2.8-11.app/Contents/bin/cmake --version cmake version 2.8.11
- Git >= 1.7.10
- Svn >= 1.7
- XCode (for the SDK libs)
- After installing XCode, install XCode command line developer tools:
xcode-select --install
- Qt 4 >= 4.8.5. We recommend you install the following two packages:
- Download and install qt-opensource-mac-4.8.6-1.dmg
- Download and install qt-opensource-mac-4.8.6-1-debug-libs.dmg
- For more details here
- XQuartz - For Mac Os X >= 10.8 (Mountain Lion) install XQuartz (http://xquartz.macosforge.org) to get X11 (no longer a default in OS X).
Mac OSX 10.11 (El Capitan)
The standard Qt4 installers fail on this version and the 4.8.6 source code won't build. But as described on the slicer-devel mailing list it is possible to install the homebrew version of qt4.
After installing the OS and Xcode, run the following two commands:
brew install qt4 xcode-select --install
TCL does not build correctly on El Capitan as of 2015-12-03, so when building Slicer turn Slicer_USE_PYTHONQT_WITH_TCL off.
Windows
Common Prerequisites
- CMake >= 3.0
- Git >= 1.7.10
- 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.
- SlikSvn . If using TortoiseSVN (versions that support command line tools), make sure you install Command line tools (disabled by default)
- NSIS (optional): Needed if packaging Slicer - Click here to download.
- Qt: See details here.
Tested and recommended build environment
- Visual Studio 2013 with Update 5, as of commit 7160260: Slicer compilation is successful, with some caveats.
- CMake >= 3.3.1
- Build Qt 4.8.7 with SSL support using qt-easy-build.
- For Debug mode, disable
Slicer_USE_SimpleITK
in CMake.
Experimental/deprecated build environments
- VS2008 (deprecated)
- Microsoft Visual Studio 9 2008 (Any edition). VS Express 2008 with SP1 direct link (functional as of Jan 11, 2014)
- Make sure to install SP1: Click here to download SP1 and click here to understand the motivation.
- Make sure to patch VS2008 using the script fix-vc9-redist-manifests.ps1
- VS2010 (experimental, may not work)
- Microsoft Visual Studio 2010 (Any edition)
- Make sure to build or install:
- Qt 4.8
- Make sure to install:
- VS2012 (experimental)
- Use a desktop version such as Visual Studio 2012 Express for Windows Desktop and remember Visual Studio 2012 Update 2). Do not use Visual Studio Express 2012 for Windows 8. You must install Windows SDK, otherwise CMake will not even find the C compiler during configure. In CMake, choose Visual Studio 11 Win64 as generator.
- Cygwin (untested)
- Cygwin suite (building with cygwin gcc not supported, but the cygwin shell environment can be used to run git, svn, etc).