|
Size: 2162
Comment:
|
Size: 3334
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 2: | Line 2: |
| This page is targeted at those who wish to develop and build the freesurfer source code on their Linux platform. These instructions have been tested for CentOS6 x86_64 and Ubuntu 12.04 i386 platforms. | This page is targeted at those who wish to develop and build the freesurfer source code on their Linux platform. These instructions have been tested for CentOS6 x86_64 desktop edition. |
| Line 5: | Line 5: |
| ''If you already have a working local copy of the CVS repository then you can skip this step.'' | If you have access within the Martinos Center firewall, follow the steps below to download the source code from CVS. Non-Martinos users can get readonly CVS access to the source code by following the directions [[https://surfer.nmr.mgh.harvard.edu/fswiki/ReadOnlyCVS|on this page]]: |
| Line 7: | Line 7: |
| # Local CVS access: export CVSROOT=/space/repo/1/dev cvs checkout -P dev |
# Local: $> export CVSROOT=/space/repo/1/dev $> cvs checkout -P dev |
| Line 11: | Line 11: |
| # Or for remote access: export CVSROOT=:ext:USER@door.nmr.mgh.harvard.edu:/space/repo/1/dev cvs checkout -P dev |
# Remote: $> export CVSROOT=:ext:USERNAME@door.nmr.mgh.harvard.edu:/space/repo/1/dev $> cvs checkout -P dev |
| Line 15: | Line 15: |
| Or, you can get readonly CVS access to the source code by following the directions [[https://surfer.nmr.mgh.harvard.edu/fswiki/ReadOnlyCVS|on this page]]: | |
| Line 17: | Line 16: |
| === Get the build tools (Ubuntu plantforms only) === If you are on an Ubuntu machine you will have to install the following packages: |
/* === Get the build tools (Ubuntu plantforms only) === If you are on an Ubuntu machine you will have to install the following packages:{{{sudo apt-get install autoconf libtool gfortran cvs}}} */ === Install System Libraries === The following system packages are required on CentOS6 systems before building. Equivalent or similar packages will be required on other linux distributions. |
| Line 21: | Line 24: |
| sudo apt-get install autoconf libtool gfortran cvs | $> yum groupinstall "Development Tools" $> yum install mesa-libGLU-devel \ freetype-devel.x86_64 \ libuuid-devel.x86_64 \ uuid-c++-devel.x86_64 \ libXmu-devel.x86_64 \ libXi-devel.x86_64 \ lapack-devel.x86_64 \ liblapack-devel.x86_64 \ libXaw-devel.x86_64 \ libpng-devel.x86_64 |
| Line 24: | Line 37: |
| === 3rd Party Dependancies === | |
| Line 25: | Line 39: |
| === Get the Libraries === Use the following commands to download and install the prepackaged bundle of open-source libraries required for building Freesurfer: |
|
| Line 28: | Line 40: |
| '''''On 64bit systems''''' | Download and install the prepackaged bundle of open-source libraries required for building Freesurfer: /* '''''On 64bit systems''''' */ |
| Line 30: | Line 44: |
| wget ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/centos6_x86_64/centos6-x86_64-packages.tar.gz mkdir -p /usr/pubsw/packages tar -C /usr/pubsw/packages -xzvf centos6-x86_64-packages.tar.gz |
$> wget ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/centos6_x86_64/centos6-x86_64-packages.tar.gz $> sudo mkdir -p /usr/pubsw/packages $> sudo tar -C /usr/pubsw/packages -xzvf centos6-x86_64-packages.tar.gz |
| Line 35: | Line 49: |
| '''''On 32bit systems''''' | It is theoretically possible to install the bundle in any location on your system, but that would require manually passing the location for each library when running the {{{configure}}} script. By installing in {{{/usr/pubsw/packages}}} the {{{configure}}} script will automatically find them. /* '''''On 32bit systems'''''{{{wget ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/centos6_x86_64/centos6-x86_64-packages.tar.gz mkdir -p /usr/pubsw/packages tar -C /usr/pubsw/packages -xzvf centos6-x86_64-packages.tar.gz }}} */ === Setup, Configure, Make === Determine the location you want Freesurfer to be installed. For example, in case case we will assume the user wants freesurfer to be installed in {{{/home/USER/freesurfer}}}. Type the following commands in the top-level Freesurfer directory (the directory that contains configure.in and all the mri_* and mris_* directories.) |
| Line 37: | Line 56: |
| wget ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/centos6_x86_64/centos6-x86_64-packages.tar.gz mkdir -p /usr/pubsw/packages tar -C /usr/pubsw/packages -xzvf centos6-x86_64-packages.tar.gz |
$> ./setup_configure $> ./configure --prefix=/home/USER/freesurfer $> make -j4 $> make install }}} Done! Its possible some systems (Ubuntu) will complain about a missing jpeg library after the {{{configure}}} script is run, or during runtime. If this happens, create the following symbolic link: {{{ $> cd /usr/lib64 $> sudo ln -s libjpeg.so.62 libjpeg.so |
| Line 42: | Line 69: |
| === Setup, Configure, Make === Determine the location you want Freesurfer to be installed. For example, in case case we will assume the user wants freesurfer to be installed in {{{/Users/USER/freesurfer}}}. Type the following commands in the top-level Freesurfer directory (the directory that contains configure.in and all the mri_* and mris_* directories.) {{{ ./setup_configure ./configure \ --prefix=/Users/USER/freesurfer \ make -j4 make install }}} Done! |
This page is targeted at those who wish to develop and build the freesurfer source code on their Linux platform. These instructions have been tested for CentOS6 x86_64 desktop edition.
1. Get the Source Code
If you have access within the Martinos Center firewall, follow the steps below to download the source code from CVS. Non-Martinos users can get readonly CVS access to the source code by following the directions on this page:
# Local: $> export CVSROOT=/space/repo/1/dev $> cvs checkout -P dev # Remote: $> export CVSROOT=:ext:USERNAME@door.nmr.mgh.harvard.edu:/space/repo/1/dev $> cvs checkout -P dev
2. Install System Libraries
The following system packages are required on CentOS6 systems before building. Equivalent or similar packages will be required on other linux distributions.
$> yum groupinstall "Development Tools"
$> yum install mesa-libGLU-devel \
freetype-devel.x86_64 \
libuuid-devel.x86_64 \
uuid-c++-devel.x86_64 \
libXmu-devel.x86_64 \
libXi-devel.x86_64 \
lapack-devel.x86_64 \
liblapack-devel.x86_64 \
libXaw-devel.x86_64 \
libpng-devel.x86_64
3. 3rd Party Dependancies
Download and install the prepackaged bundle of open-source libraries required for building Freesurfer:
$> wget ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/centos6_x86_64/centos6-x86_64-packages.tar.gz $> sudo mkdir -p /usr/pubsw/packages $> sudo tar -C /usr/pubsw/packages -xzvf centos6-x86_64-packages.tar.gz
It is theoretically possible to install the bundle in any location on your system, but that would require manually passing the location for each library when running the configure script. By installing in /usr/pubsw/packages the configure script will automatically find them.
4. Setup, Configure, Make
Determine the location you want Freesurfer to be installed. For example, in case case we will assume the user wants freesurfer to be installed in /home/USER/freesurfer. Type the following commands in the top-level Freesurfer directory (the directory that contains configure.in and all the mri_* and mris_* directories.)
$> ./setup_configure $> ./configure --prefix=/home/USER/freesurfer $> make -j4 $> make install
Done!
Its possible some systems (Ubuntu) will complain about a missing jpeg library after the configure script is run, or during runtime. If this happens, create the following symbolic link:
$> cd /usr/lib64 $> sudo ln -s libjpeg.so.62 libjpeg.so
Send your comments/questions/feedback to zkaufman@nmr.mgh.harvard.edu
