Anaconda based Build, All Platforms

Note that even with a source build it may be difficult to get this working on systems with very old operating system installs. We normally try to support OS versions 6-7 years old. Please report any problems.

Mac OS X, Linux

  1. Download and install Miniconda2 or Anaconda2.

    1. Miniconda2 (<30MB): Minimal installer that contains conda and Python. Ideal for cluster installations and if you need conda only for EMAN2.

    2. Anaconda2 (270-350 MB): Entire Anaconda distribution, open data science platform powered by Python. Includes packages like Jupyter, Spyder, Anaconda Navigator.

  2. Checkout EMAN2 code from GitHub:cryoem/eman2.

    cd <some-path-to-keep-eman2-source>
    git clone https://github.com/cryoem/eman2.git
  3. Install dependencies. Follow only one of the steps below:
    1. This option installs EMAN2 dependencies into a conda environment. It requires running the second command in each shell before trying to run EMAN2/SPARX/SPHIRE commands.

      conda create -n eman-env eman-deps -c cryoem -c defaults -c conda-forge
      source activate eman-env
    2. This option is easier, and doesn't use an environment. It will work with Miniconda, but will not work with Anaconda versions 4.2.0 (2016-09-28) and newer, because the bundled Qt version was upgraded from version 4 to 5.

      conda install eman-deps -c cryoem -c defaults -c conda-forge          # Mac OSX
      conda install eman-deps=*=np18* -c cryoem -c defaults -c conda-forge  # Linux

      Listing the channels explicitly can be avoided by specifying them in $HOME/.condarc, see conda documentation for more details, https://conda.io/docs/using/index.html.

  4. Out-of-source builds are recommended, so work in a directory outside of eman2 source (this is a recommended practice in general, not EMAN2-specific). Note cmake, not ccmake . CMake will automatically find the dependencies. If you want to change any of the CMake values, then use cmake-gui or ccmake.

    cd <build-directory>
    cmake <some-path-to-keep-eman2-source>
  5. If conda is not found in PATH, set CONDA_ROOT to your conda environment directory. It could be the main installation or an environment.
  6. If you set CONDA_ROOT to an environment, make sure to delete any cmake variables that cmake already found, variables like EMAN_INSTALL_PREFIX, EMAN_PREFIX, *_LIBRARY or similar, *_INCLUDE_PATH or similar.
  7. Rerun cmake and continue with make.

    cmake <some-path-to-keep-eman2-source>
    make -j           # "make" should pick up the number of available processors,
    make -j4          # but you may specify the number if you like
    make install