FreeSurfer Python Development
To facilitate straightforward and reproducible python development in the lab, a custom python3 (anaconda) distribution for internal developers is installed at /space/freesurfer/python/linux. To use this version, make sure all calls to python or python3 point to this install by adding the following to your PATH.
Keep in mind there's also a python3 link in /usr/pubsw/bin, so it's important that /space/freesurfer/python/linux/bin comes before that in your PATH.
Developing and Using the FreeSurfer Python Library
The freesurfer python library, which contains general utilities and various submodules like deepsurfer, gems, and samseg, is developed in the repository under repo/python/freesurfer. In order to utilize this library during development, you must point your PYTHONPATH at it:
This allows you to import your working version of the freesurfer library in any script or python interpreter. You can test it by opening a python interpreter and running:
import freesurfer as fs status = fs.run('echo hello!')
By default, the gpu-tensorflow package is installed, and to use it, you must point to the CUDA libraries via LD_LIBRARY_PATH:
Keep in mind that /usr/pubsw/packages/CUDA/lib64 contains the shared libraries for many CUDA versions, so you should refrain from including it in LD_LIBRARY_PATH until you're actually using cuda, since it will slow down program launches by searching that whole network directory.