EMAN2 Installation

For up-to-date binary installations you must use the instructions on this page. The old binary installation images were retired in late 2023. They are still available for historical purposes, but are no longer updated.

While the binaries on this page are fine, if you install from source, then you can rapidly update when we make small patches to the code. Code is being developed continuously, and binaries are built only every few months.

Install binary into Anaconda/MiniForge environment (all platforms)

  1. Install Anaconda or MiniForge (for your platform)

    • On that page, scroll down to the Latest Release, then download the appropriate file, for example: Miniforge3-Linux-x86_64.sh
    • Run the installer, for example: bash Miniforge3-Linux-x86_64.sh
    • On M1/M2 Macs: make sure you have the ARM64 MiniForge, not Intel.

    • On Windows 11: the native Windows MiniForge will not work, you must use the Linux MiniForge within a WSL2 environment!

    • We suggest MiniForge to avoid licensing issues with Anaconda, but if your institution subscribes to Anaconda, that's fine too. If you use Anaconda, you may need to install Mamba manually below.

  2. Install mamba (only if necessary):

    • if you just installed MiniForge above, you will already have mamba. If you have your own Anaconda installation, you may need this step

    conda install mamba -c conda-forge
  3. Update (optional): consider updating Anaconda/!MiniForge before installing. It's a good idea to do this periodically:

    mamba update --all
    but if you have many other (non-EMAN) environments, you may consider if this will impact them.
  4. Install EMAN2: We strongly recommend installing EMAN2 within its own MiniForge environment like this:

    conda create -n eman2 eman-dev -c cryoem -c conda-forge

    Current version:

    https://anaconda.org/cryoem/eman-dev/badges/version.svg https://anaconda.org/cryoem/eman-dev/badges/latest_release_date.svg https://anaconda.org/cryoem/eman-dev/badges/downloads.svg

    https://anaconda.org/cryoem/eman-dev/badges/platforms.svg

  5. Activate to Use: Any time you want to use EMAN2 you will need to first activate the correct environment. You can deactivate when done.

    conda activate eman2
  6. M1/M2 Macs (Optional): initial support for Tensorflow on the GPU is available via PyPi, but not conda.

    # with the eman2 environment activated
    pip install tensorflow-metal
  7. Linux: see the GPU section below.

  8. Run these programs to see if the install worked:
       1 # This will display the exact version you have installed. If you ask for help, provide the full output of this command.
       2 e2version.py
       3 # Relative speed factor of a single core on your computer, 2-3 typ.
       4 e2speedtest.py
       5 # Opens a browser window you can use to view any EMAN2 compatible file in various ways. Close the main window when done.
       6 e2display.py
       7 # Creates a small image with a circle in the middle of it
       8 e2proc2d.py :64:64:1 test.hdf --process mask.sharp:outer_radius=24
       9 # Displays the file you just created
      10 e2display.py test.hdf
    

GPU Aceleration & Deep Learning

Older EMAN2 programs make use of Tensorflow for Deep Learning/GPU support, but we have been gradually migrating to the new JAX library, so having both installed is strongly suggested.

If you need to test the basic tensorflow installation, there is a program in examples/ called test_tensorflow_basic.py you can run.

If you have problems you cannot figure out, feel free to post questions to the EMAN2 Google Group.