Documentation/Nightly/Developers/Build Instructions/Prerequisites
From Slicer Wiki
Home < Documentation < Nightly < Developers < Build Instructions < Prerequisites
For the latest Slicer documentation, visit the read-the-docs. |
PREREQUISITES
Please check that the following tools are installed on your machine.
Qt libraries are required. Consider reading Qt requirements. |
CMake is required. |
Git is required. |
SVN is required. |
Consider reading platform specific requirements listed below.
Linux
- CMake >= 2.8.9
- Git >= 1.6.5
- Svn
- Qt 4.8.5. See details here (Note that any version >= Qt 4.7.4 can be used for Ubuntu < 12.04)
Ubuntu / Debian
- Ubuntu, Debian squeeze/wheezy/testing(jessie) users, just type the following line 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
For Ubuntu 12.04, 12.10 and 13.04: You MUST download and build the standard cmake from http://cmake.org/ because the distributed version of cmake cannot be used to build slicer.
mkdir ~/Support && cd Support # This is where we will download and install required software # By copying this one-liner in your terminal, it will download and build CMake cmake_package="cmake-2.8.11.2"; \ wget http://www.cmake.org/files/v2.8/$cmake_package.tar.gz -v -O $cmake_package.tar.gz && \ tar -xzvf $cmake_package.tar.gz; \ cd $cmake_package && \ cmake -DCMAKE_USE_OPENSSL:BOOL=ON && \ make -j4 # By copying this one-liner, symbolic links to cmake tools will be created in /usr/local/bin. # That way calling cmake, ctest, ... from the command line will resolve to this version of CMake. for tool in cmake ccmake ctest cpack; do sudo ln -s ~/Support/$cmake_package/bin/$tool /usr/local/bin/$tool; done
For Ubuntu 12.04, 12.10, 13.04 and 13.10: Qt >= 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 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://download.qt-project.org/official_releases/qt/4.8/4.8.5/qt-everywhere-opensource-src-4.8.5.tar.gz # This will configure and build Qt in RELEASE against the zlib and openssl previously built tar -xzvf qt-everywhere-opensource-src-4.8.5.tar.gz mv qt-everywhere-opensource-src-4.8.5 qt-everywhere-opensource-release-src-4.8.5 mkdir qt-everywhere-opensource-release-build-4.8.5 cd qt-everywhere-opensource-release-src-4.8.5 ./configure -prefix $cwd/qt-everywhere-opensource-release-build-4.8.5/ \ -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
References:
- Why cmake should be built from Source on Ubuntu 12.04 and above ?
- http://slicer-devel.65872.n3.nabble.com/PYTHON-INCLUDE-DIR2-when-building-Slicer4-td4028557.html
- Slicer issue #3103
- Slicer issue #3116
- CMake issue #14156
- Why Qt 4.8.5 should be used on Ubuntu 12.04 and above ?
- Slicer issue #3325
CentOS
- CentOS user type:
yum install make gcc-c++ libX11-devel libXt-devel libXext-devel libGLU-devel mesa-libOSMesa-devel mesa-libGL-devel mesa-libGLU-devel ncurses
MacOSX
- 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.6.5
- Svn
- XCode (for the SDK libs)
- Qt >= 4.7.4. See 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).
Windows
- CMake >= 2.8.9
- Qt 4.7.4 or greater (for VS2008). See details here
- Git-X.X.X-preview2013XXXX.exe recommended.
- 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.
- IDE
- Tested/Recommended: Microsoft Visual Studio 9 2008 (Any edition). VS Express 2008 with SP1 direct link (functional as of Jan 11, 2014)
- Experimental: The plan is to support Microsoft Visual Studio 2010 (Any edition). NOTE THAT EXPERIMENTAL MEANS THIS DOESN'T YET WORK :)
- Experimental (Visual Studio 2012): 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.
- Un-tested: Cygwin suite (building with cygwin gcc not supported, but the cygwin shell environment can be used to run git, svn, etc).