Differences between revisions 38 and 46 (spanning 8 versions)
Revision 38 as of 2017-06-14 22:04:21
Size: 2011
Editor: TunayDurmaz
Comment:
Revision 46 as of 2017-07-26 22:22:20
Size: 2429
Editor: SteveLudtke
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 = 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 15: Line 15:
 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 and skip the next step, "Install dependencies".{{{  1. Install dependencies. Follow only one of the steps below:
   a. This option installs Anaconda and sets up a specific environment for EMAN2. It requires running the second command in each shell before trying to run EMAN2/SPARX/SPHIRE commands. {{{
Line 19: Line 20:

 1. Install dependencies {{{
conda install eman-deps -c cryoem -c defaults -c conda-forge
   a. This option is easier, and doesn't use an environment, but may be broken (July 2017) due to recent Qt changes in Anaconda {{{
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 24: Line 25:
 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 27: Line 28:
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 \
                                       -DEMAN_CXX_FLAGS="-D_GLIBCXX_USE_CXX11_ABI=0" # This flag will be set in cmake with https://github.com/cryoem/eman2/pull/80
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 Anaconda2 or Miniconda2.

  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 Anaconda and sets up a specific environment for EMAN2. 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, but may be broken (July 2017) due to recent Qt changes in Anaconda

      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)