Differences between revisions 33 and 47 (spanning 14 versions)
Revision 33 as of 2017-06-14 01:04:55
Size: 1804
Editor: TunayDurmaz
Comment:
Revision 47 as of 2017-07-27 00:33:01
Size: 2843
Editor: TunayDurmaz
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= !!! UNDER CONSTRUCTION !!! = = Anaconda based Build, All Platforms =
Line 3: Line 3:
= All platforms =

The following instructions will work with cmake changes introduced in https://github.com/cryoem/eman2/pull/65.
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.
Line 9: Line 7:
 1. Download and install [[https://www.continuum.io/downloads | Anaconda2]] or [[https://conda.io/miniconda.html | Miniconda2]].  1. Download and install [[https://conda.io/miniconda.html | Miniconda2]] or [[https://www.continuum.io/downloads | Anaconda2]].
   a. '''Miniconda2 (<30MB)''': Minimal installer that contains conda and Python. Ideal for cluster installations and if you need conda only for EMAN2.
   a. '''Anaconda2 (270-350 MB)''': Entire Anaconda distribution, open data science platform powered by Python. Includes packages like Jupyter, Spyder, Anaconda Navigator.
Line 17: Line 17:
 1. Optionally, activate an existing conda environment, e.g. `source activate eman-env`. Skip this step, if you don't understand this statement. However, if you already use anaconda, you may get package conflicts when you install eman dependencies in the next step. In that case, you need to install eman and its dependencies in its own conda environment.

 1. Install dependencies {{{
conda install eman-deps -c cryoem -c defaults -c conda-forge
 1. Install dependencies. Follow only one of the steps below:
   a. 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
}}}
   a. 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
Line 23: Line 27:
 1. Out-of-source builds are recommended, so work in a directory outside of eman2 source (this is generally true, 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'''. {{{  1. 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'''. {{{
Line 26: Line 30:
rm -f CMakeCache.txt # This is needed to ensure cmake doesn't have any leftovers from previous runs
cmake <some-path-to-keep-eman2-source> -DENABLE_CONDA=ON
cmake <some-path-to-keep-eman2-source>
}}}
 1. If conda is not found in PATH, set CONDA_ROOT to your conda environment directory. It could be the main installation or an environment.
 1. 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.
 1. Rerun cmake and continue with make. {{{
cmake <some-path-to-keep-eman2-source>

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

EMAN2/COMPILE_EMAN2_ANACONDA-PRE-CONDA-ENVIRONMENTS (last edited 2019-11-01 14:27:54 by TunayDurmaz)