|
Tags: 2017 source edit, Replaced |
(182 intermediate revisions by 19 users not shown) |
Line 1: |
Line 1: |
− | <noinclude>{{documentation/versioncheck}}</noinclude>
| + | {{documentation/banner |
− | __TOC__
| + | | text = [https://slicer.readthedocs.io/en/latest/developer_guide/build_instructions/index.html This page has been moved to read-the-docs.] |
− | | + | | background-color = 8FBC8F }} |
− | == PREREQUISITES ==
| |
− | <br>
| |
− | | |
− | Please check that the following tools are installed on your machine.
| |
− | | |
− | <br>
| |
− | {{mbox
| |
− | | type = protection
| |
− | | text = Qt libraries are '''required'''. Consider reading [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt|Qt requirements]]. | |
− | | image= [[{{tool|logo|qt}}|x40px]]
| |
− | }}
| |
− | <br>
| |
− | | |
− | {{mbox
| |
− | | type = protection
| |
− | | text = CMake is '''required'''.
| |
− | | image= [[{{tool|logo|cmake}}|x40px]]
| |
− | }}
| |
− | <br>
| |
− | | |
− | {{mbox
| |
− | | type = protection
| |
− | | text = Git is '''required'''.
| |
− | | image= [[{{tool|logo|git}}|x40px]]
| |
− | }}
| |
− | <br>
| |
− | | |
− | {{mbox
| |
− | | type = protection
| |
− | | text = SVN is '''required'''.
| |
− | | image= [[{{tool|logo|svn}}|x40px]]
| |
− | }}
| |
− | | |
− | <br>
| |
− | | |
− | Consider reading platform specific requirements listed below.
| |
− | | |
− | === Linux ===
| |
− | * [{{tool|download|cmake}} CMake] >= 2.8.9
| |
− | * [{{tool|download|git}} Git] >= 1.6.5
| |
− | * [{{tool|download|svn}} Svn]
| |
− | * Qt 4.8.5. See details [http://na-mic.org/Mantis/view.php?id=3325#bugnotes here] (Note that any version >= Qt 4.7.4 can be used for Ubuntu < 12.04)
| |
− | | |
− | ==== Ubuntu / Debian ====
| |
− | '''For Ubuntu 12.04 and above''' note that (1) you must download and build the standard cmake from http://cmake.org/ because the version of cmake that comes with Ubuntu 12.04 and above cannot be used to build slicer and that (2) Qt 4.8.5 should be used. See reference below for more details.
| |
− | | |
− | *Ubuntu, Debian squeeze, Debian testing (wheezy) 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
| |
− | | |
− | 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 && \
| |
− | ./bootstrap && \
| |
− | 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
| |
− | | |
− | <!--
| |
− | * Debian squeeze has cmake 2.8.2 and Qt 4.6.3. You will need to install newer versions of these packages.
| |
− | * Ubuntu 10.04 has cmake 2.8.0
| |
− | -->
| |
− | | |
− | 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 [http://na-mic.org/Mantis/view.php?id=3103 #3103]
| |
− | ** Slicer issue [http://na-mic.org/Mantis/view.php?id=3116#c8649 #3116]
| |
− | ** CMake issue [http://public.kitware.com/Bug/view.php?id=14156 #14156]
| |
− | | |
− | * Why Qt 4.8.5 should be used on Ubuntu 12.04 and above ?
| |
− | ** Slicer issue [http://www.na-mic.org/Bug/view.php?id=3325 #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
| |
− | | |
− | <!--
| |
− | Todo: This will have to be added in FAQ: Troubleshoot section
| |
− | ''glx-utils'' provides ''glxgears'' that can be used to test rendering
| |
− | -->
| |
− | | |
− | === MacOSX ===
| |
− | * Mac Os X >= 10.5 (Leopard)
| |
− | * [{{tool|download|cmake}} CMake] >= 2.8.9
| |
− | ** For Mac Os X >= 10.8 ([http://en.wikipedia.org/wiki/OS_X_Mountain_Lion Mountain Lion]) and/or recent XCode >= 4.5.X - [{{tool|download|cmake}} CMake] >= 2.8.11 is required. See http://www.cmake.org/files/v2.8/cmake-2.8.11-Darwin64-universal.tar.gz
| |
− | <!-- 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 >= 2.8.10.20130220 [http://www.cmake.org/files/dev/?C=M;O=D here]).
| |
− | -->
| |
− |
| |
− | $ 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
| |
− | | |
− | * [{{tool|download|git}} Git] >= 1.6.5
| |
− | * [{{tool|download|svn}} Svn]
| |
− | <!--
| |
− | *[[{{tool|logo|cmake}}|x16px]] [{{tool|download|cmake}} CMake] >= 2.8.9
| |
− | *[[{{tool|logo|git}}|x16px]] [{{tool|download|git}} Git] >= 1.6.5
| |
− | -->
| |
− | * XCode (for the SDK libs)
| |
− | * Qt >= 4.7.4. See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Mac|here]]
| |
− | * XQuartz - For Mac Os X >= 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).
| |
− | <!--
| |
− | ** 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.
| |
− | ** Xcode with gcc should ork with either version of ITK.
| |
− | ** 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->Preferences->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).
| |
− | -->
| |
− | | |
− | === Windows ===
| |
− | * [{{tool|download|cmake}} CMake] >= 2.8.9
| |
− | <!--
| |
− | * [{{tool|download|git}} Git] >= 1.6.5
| |
− | -->
| |
− | * Qt 4.7.4 or greater (for VS2008). See details [[Documentation/{{documentation/version}}/Developers/Build_Instructions/Prerequisites/Qt#Windows|here]]
| |
− | <!--
| |
− | *[[{{tool|logo|cmake}}|x16px]] [{{tool|download|cmake}} CMake] >= 2.8.9
| |
− | *[[{{tool|logo|git}}|x16px]] [{{tool|download|git}} Git] >= 1.6.5.
| |
− | -->
| |
− | * [https://code.google.com/p/msysgit/downloads/list?can=3 ''Git-X.X.X-preview2013XXXX.exe''] recommended.
| |
− | <!--
| |
− | ** Use of [http://code.google.com/p/tortoisegit/ TortoiseGit] is optional.
| |
− | -->
| |
− | ** {{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.
| |
− | * [http://www.sliksvn.com/en/download SlikSvn] <!-- or [http://www.cygwin.com cygwin's svn client]-->
| |
− | * NSIS (optional): Needed if packaging Slicer - Click [http://nsis.sourceforge.net/Download here] to download.
| |
− | * IDE
| |
− | ** '''Tested/Recommended''': [https://www.microsoft.com/visualstudio/en-us/products/2008-editions Microsoft Visual Studio 9 2008] (Any edition). [http://go.microsoft.com/?linkid=7729279 Direct link] (functional as of Jan 11, 2014)
| |
− | *** Make sure to install:
| |
− | **** 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.
| |
− | ** '''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 :)
| |
− | *** Make sure to build or install:
| |
− | **** Qt 4.8
| |
− | *** Make sure to install:
| |
− | **** 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.
| |
− | **** 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.
| |
− | <!-- 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 -->
| |
− | <!-- *** Optional: "Microsoft Visual C++ 2010 SP1 Redistributable Package". 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&id=29 x86 (32bit) for VS 2008] -->
| |
− | ** '''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 <b>for Windows Desktop</b>] and remember [http://www.microsoft.com/en-us/download/details.aspx?id=38188 Visual Studio 2012 Update 2]). Do <b>not</b> use Visual Studio Express 2012 <em>for Windows 8</em>. 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 <tt>Visual Studio 11 Win64</tt> 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).
| |