|
Size: 1845
Comment:
|
Size: 3743
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 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 # Or for remote access: export CVSROOT=:ext:USER@door.nmr.mgh.harvard.edu:/space/repo/1/dev cvs checkout -P dev |
# 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 |
| Line 14: | 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]]: === Get the Libraries === You will need to download and install prepackaged bundle of open-sourced libraries on your system. *[[ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/centos6_x86_64/centos6-x86_64-packages.tar.gz|centos6-x86_64-packages.tar.gz]] |
|
| Line 19: | Line 16: |
| To install the prepackaged bundle of open-source libraries, execute the following command after downloading it: | /* === 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 === Depending on your specific linux distribution, the following system packages are required will be required: '''CentOS 6:''' |
| Line 21: | Line 25: |
| mkdir -p /usr/pubsw/packages tar -C /usr/pubsw/packages -xzvf centos6-x86_64-packages.tar.gz |
$> 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: |
| === Set Your Path === | '''Ubuntu 14.04 LTS:''' |
| Line 26: | Line 40: |
| export PATH=/usr/pubsw/packages/autotools/bin:$PATH | $> sudo apt-get install build-essential \ libtool \ automake \ gfortran \ libglu1-mesa-dev \ freetype* \ uuid-dev \ libxmu-dev \ libxmu-headers \ libxi-dev \ libx11-dev \ libxt-dev \ liblapack-dev |
| Line 28: | Line 54: |
=== Library Dependencies === In order to compile freesurfer, you will need to download and install our prebuilt bundle of 3rd party dependancies. Download the package and extract its content. Remember the extraction location as you will need to pass that directory to the {{{configure}}} script. /* '''''On 64bit systems''''' */ {{{ $> wget ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/centos6_x86_64/centos6-x86_64-packages.tar.gz $> tar -xzvf centos6-x86_64-packages.tar.gz $> cd centos6-x86_64-packages $> ./setup.sh }}} |
|
| Line 29: | Line 68: |
| 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.) | 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.): '''CentOS 6:''' |
| Line 31: | Line 73: |
| ./setup_configure ./configure \ --prefix=/Users/USER/freesurfer \ make -j4 make install |
$> ./setup_configure $> ./configure --prefix=/home/username/fs_install --with-pkgs-dir=/home/username/centos6-x86_64-packages $> make -j4 $> make install |
| Line 37: | Line 78: |
'''Ubuntu 14.04 LTS:''' {{{ $> ./setup_configure $> ./configure --prefix=/home/username/fs_install --with-pkgs-dir=/home/username/centos6-x86_64-packages --disable-Werror --diable-GUI-build $> make -j4 $> make install }}} |
|
| Line 38: | Line 88: |
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 }}} |
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
Depending on your specific linux distribution, the following system packages are required will be required:
CentOS 6:
$> 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_64Ubuntu 14.04 LTS:
$> sudo apt-get install build-essential \
libtool \
automake \
gfortran \
libglu1-mesa-dev \
freetype* \
uuid-dev \
libxmu-dev \
libxmu-headers \
libxi-dev \
libx11-dev \
libxt-dev \
liblapack-dev
3. Library Dependencies
In order to compile freesurfer, you will need to download and install our prebuilt bundle of 3rd party dependancies. Download the package and extract its content. Remember the extraction location as you will need to pass that directory to the configure script.
$> wget ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/centos6_x86_64/centos6-x86_64-packages.tar.gz $> tar -xzvf centos6-x86_64-packages.tar.gz $> cd centos6-x86_64-packages $> ./setup.sh
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.):
CentOS 6:
$> ./setup_configure $> ./configure --prefix=/home/username/fs_install --with-pkgs-dir=/home/username/centos6-x86_64-packages $> make -j4 $> make install
Ubuntu 14.04 LTS:
$> ./setup_configure $> ./configure --prefix=/home/username/fs_install --with-pkgs-dir=/home/username/centos6-x86_64-packages --disable-Werror --diable-GUI-build $> 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
