Differences between revisions 1 and 53 (spanning 52 versions)
Revision 1 as of 2013-03-29 11:13:33
Size: 2524
Editor: ZekeKaufman
Comment:
Revision 53 as of 2014-11-05 12:25:57
Size: 4610
Editor: ZekeKaufman
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from freesurfer_mac_developers page
Line 2: Line 3:
'''Index'''
Line 4: Line 4:
This page is targeted at those who wish to develop and build the freesurfer source code on their Mac OSX platform. These instructions have been tested for Mac 10.6 (Snow Leopard) and 10.7 (Lion). This page is targeted at those who wish to develop and build the freesurfer source code on their Mac OSX platform. These instructions have been tested for Mac OSX 10.6, 10.7, and 10.8 (Snow Leopard, Lion, and Mountain Lion). As of the writing of this document, a build on OSX 10.9 (Mavericks) has not been completed. In order to build Freesurfer, the following prerequisite software will need to be installed on your OSX system:

 *[[ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/lion/qt-mac-opensource-4.7.4.dmg|Qt 4.7.4]]
 *[[http://gcc.gnu.org/wiki/GFortranBinaries#MacOS|gfortran]]
 *[[http://xquartz.macosforge.org/downloads/SL/XQuartz-2.7.5.dmg|XQuartz 2.7.5]]
 *Xcode 4.x Command Line Tools ([[ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/lion/xcode462_cltools_10_76938260a.dmg|Lion]], [[ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/lion/xcode462_cltools_10_86938259a.dmg|Mountain Lion]])


'''''IMPORTANT:''''' Do to a Qt bug, after you install Qt you must delete line 320 from the file {{{/Library/Frameworks/QtCore.framework/Headers/qglobal.h}}} (Removing the line that says '#warning "This version of Mac OS X is unsupported"')

## '''''IMPORTANT:''' CVS no longer ships with OSX 10.8 Command Line Tools and higher. To get CVS working on later versions of Mac OSX follow the directions [[http://apple.stackexchange.com/questions/108240/cvs-on-os-x-mavericks|on this page]].''
Line 9: Line 19:
''If you already have a working local copy of the CVS repository then you can ignore this step.''
Line 11: Line 20:
Local CVS access: ==== (Martinos Users) ====
Line 13: Line 22:
Users who have an account at the Martinos Center can download the source code from the local CVS repository using the following commands:
Line 14: Line 24:
# Local access
Line 16: Line 27:
}}}
Remote CVS access:
Line 19: Line 28:
{{{ # Or, for remote access:
Line 23: Line 32:

==== (non Martinos Users) ====
Users who do NOT have an account at the Martinos Center can first [[https://surfer.nmr.mgh.harvard.edu/opensourcereg.html|register to receive the password to the Read-only CVS repository]], and then download the source code using the following commands:

{{{
cvs -d :pserver:anonymous@fsvm.nmr.mgh.harvard.edu:/usr/fscvsroot login
# Type in password
cvs -d :pserver:anonymous@fsvm.nmr.mgh.harvard.edu:/usr/fscvsroot checkout -P dev
}}}

The above commands will check out the 'trunk' (most up to date) version of the source code. If you want a particular release (i.e. release 5.3), use the "-r release_5_3_0" flag when issuing the checkout command. For example:
{{{
cvs -d :pserver:anonymous@fsvm.nmr.mgh.harvard.edu:/usr/fscvsroot checkout -P -r release_5_3_0 dev
}}}
Line 24: Line 48:
''If you are at the NMR Center and already have {{{/usr/pubsw/packages}}} mounted on your system then you can skip this step.''
Line 26: Line 49:
Freesurfer builds against a set of open-sourced libraries. Special bundles of this open-source code are available on the [[http://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/|distribution site]]. Once you have downloaded the bundle, execute the following command to install them into the {{{/usr/pubsw/packages}}} directory: You will need to download and install the prepackaged bundle of open-sourced libraries ([[ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/snowleopard/MacOSX_SnowLeopard_Packages.tar.gz| Snow Leopard]], [[ftp://surfer.nmr.mgh.harvard.edu/pub/dist/fs_supportlibs/prebuilt/mountain_lion/MacOSX_Lion_Packages.tar.gz| Lion, Mountain Lion]]) on your system. To install the prepackaged bundle of open-source libraries, execute the following command after downloading it:
Line 30: Line 53:
tar -C /usr/pubsw/packages -xzvf DownLoadedFileName.tar.gz tar -C /usr/pubsw/packages -xzvf MacOSX_*_Packages.tar.gz
Line 32: Line 55:
'''''NOTE:''' You may install the open-sourced libraries into any directory you wish but it is best to install them into the {{{/usr/pubsw/packages}}} directory, as that is where Freesurfer setup script checks for its packages during its setup. If you choose to install in a different location than the onus will be on you to setup everything correctly during the '''configure''' phase. That is outside the scope of this document.''
Line 39: Line 63:
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/zkaufman/freesurfer}}}. Type the following commands in the top-level Freesurfer directory (the directory that contains configure.in and all the mri_* and mris_* directories.)

If your on Mac OSX 10.6 (Snow Leopard):
Type the following commands in the top-level Freesurfer directory. If your on Mac OSX 10.6 (Snow Leopard):
Line 44: Line 66:
cd dev
Line 46: Line 69:
      --prefix=/Users/zkaufman/freesurfer       --prefix=<install-dir> \
      --with-vtk-cocoa-dir=/usr/pubsw/packages/vtk/5.6.0_Cocoa
Line 50: Line 74:
If your on Mac OSX 10.7 (Lion):
If your on Mac OSX 10.7 or 10.8 (Lion or Mountain Lion):
Line 53: Line 78:
cd dev
Line 55: Line 81:
      --prefix=/Users/zkaufman/freesurfer \
      --disable-GUI-build \
      --with-Mac32-GUIs
      --prefix=<install-dir> \
      --with-vtk-cocoa-dir=/usr/pubsw/packages/vtk/5.6.1_cocoa
Line 63: Line 88:
--------

=== Troubleshooting ===
 * If you are building the '''5.3 release''' than you will need to do the following:
### * Add [[ftp://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/5.3.0-patch/unwarpGradientNonlinearity.c|unwarpGradientNonlinearity.c]] to the {{{dev/utils}}} directory.
### * Add [[ftp://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/5.3.0-patch/unwarpGradientNonlinearity.h|unwarpGradientNonlinearity.h]] to the {{{dev/include}}} directory.

--------

This page is targeted at those who wish to develop and build the freesurfer source code on their Mac OSX platform. These instructions have been tested for Mac OSX 10.6, 10.7, and 10.8 (Snow Leopard, Lion, and Mountain Lion). As of the writing of this document, a build on OSX 10.9 (Mavericks) has not been completed. In order to build Freesurfer, the following prerequisite software will need to be installed on your OSX system:

IMPORTANT: Do to a Qt bug, after you install Qt you must delete line 320 from the file /Library/Frameworks/QtCore.framework/Headers/qglobal.h (Removing the line that says '#warning "This version of Mac OS X is unsupported"')

1. Get the Source Code

1.1. (Martinos Users)

Users who have an account at the Martinos Center can download the source code from the local CVS repository using the following commands:

# Local 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

1.2. (non Martinos Users)

Users who do NOT have an account at the Martinos Center can first register to receive the password to the Read-only CVS repository, and then download the source code using the following commands:

cvs -d :pserver:anonymous@fsvm.nmr.mgh.harvard.edu:/usr/fscvsroot login
# Type in password
cvs -d :pserver:anonymous@fsvm.nmr.mgh.harvard.edu:/usr/fscvsroot checkout -P dev

The above commands will check out the 'trunk' (most up to date) version of the source code. If you want a particular release (i.e. release 5.3), use the "-r release_5_3_0" flag when issuing the checkout command. For example:

cvs -d :pserver:anonymous@fsvm.nmr.mgh.harvard.edu:/usr/fscvsroot checkout -P -r release_5_3_0 dev

2. Get the Libraries

You will need to download and install the prepackaged bundle of open-sourced libraries (Snow Leopard, Lion, Mountain Lion) on your system. To install the prepackaged bundle of open-source libraries, execute the following command after downloading it:

mkdir -p /usr/pubsw/packages
tar -C /usr/pubsw/packages -xzvf MacOSX_*_Packages.tar.gz

3. Set Your Path

export PATH=/usr/pubsw/packages/autotools/bin:$PATH

4. Setup, Configure, Make

Type the following commands in the top-level Freesurfer directory. If your on Mac OSX 10.6 (Snow Leopard):

cd dev
./setup_configure
./configure \
      --prefix=<install-dir> \
      --with-vtk-cocoa-dir=/usr/pubsw/packages/vtk/5.6.0_Cocoa
make -j4
make install

If your on Mac OSX 10.7 or 10.8 (Lion or Mountain Lion):

cd dev
./setup_configure
./configure \
      --prefix=<install-dir> \
      --with-vtk-cocoa-dir=/usr/pubsw/packages/vtk/5.6.1_cocoa
make -j4
make install

Done!


5. Troubleshooting

  • If you are building the 5.3 release than you will need to do the following:


Send your comments/questions/feedback to zkaufman@nmr.mgh.harvard.edu