Differences between revisions 1 and 18 (spanning 17 versions)
Revision 1 as of 2017-05-12 19:32:39
Size: 2548
Editor: TunayDurmaz
Comment: cleanup new page, keep the structure
Revision 18 as of 2017-05-18 04:37:00
Size: 7945
Editor: SteveLudtke
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= All platforms =

== Testing ==
'''After''' installing on any of the systems below, you should test to make sure it's working. While we have unit testing, it is mainly for developers. Instead, we suggest just running the following 4 basic tests:

 * e2version.py (make sure the displayed version is what you expect, including the timestamp. If you have any problems we need you to include the output from this command in your message)
 * e2speedtest.py (will also give you the relative speed to expect from your machine)
 * e2projectmanager.py (if the GUI pops up, it's working)
 * e2proc2d.py anyimagefile bdb:test (anyimagefile is any 2d image or stack supported by eman2, this will make sure the database works)
= Binary Installation Instructions =
Line 13: Line 5:
To install:

    1. Download the appropriate file .... .

    2. If you use the bash shell, add the following line to your ".profile" file:

    {{{
test -r /Applications/EMAN2/eman2.bashrc && source /Applications/EMAN2/eman2.bashrc
}}}

    3. Restart your terminal program for a fresh shell. EMAN2 should now be installed and function properly.

''Notes:''
 * Placeholder
 1. Download eman2.X.MacOS.sh
 1. Run:
 {{{
bash <path to EMAN2 installer>
 }}}
  * You will be prompted for a location to install EMAN2. Note that you cannot rename this folder after installation! You must reinstall if you wish to move the installation
  * You will be asked if you want to add ` export PATH=... ` to your `.profile` file.
  * If you use a different shell, such as tcsh or zsh, you may need to edit the appropriate file yourself.
  * You should not normally need to run the OpenMPI reinstallation scripts. The copy of OpenMPI/Pydusa now distributed with the binaries should work on Macs in most cases.
  * Don't forget to restart your shell if you changed the .profile or other scripts
 1. Run these programs to see if the install worked:
 {{{
e2version.py
e2speedtest.py
e2display.py
e2proc2d.py :64:64:1 test.hdf --process mask.sharp:outer_radius=24
 }}}
 1. If you have problems with any of these programs, the first thing to check is whether you have PYTHONPATH, LD_LIBRARY_PATH or DYLD_LIBRARY_PATH set in your shell. While used in previous versions of EMAN, these variables are no longer necessary. If they are set to make some other software package work, but they interfere with the programs above, you will have to unset them, and set them only when you need the other software.
Line 29: Line 25:
== Linux == == Linux Workstations (not clusters) ==
Line 31: Line 27:
Paragraph:  1. There are two linux binaries available: eman2.X.centos6.sh and eman2.X.centos7.sh
  * if you are using a distribution other than CentOS, which version you need will depend on how old your OS is. I suggest starting with centos7, and only going back to centos6 if it fails.
 1. Run:
 {{{
bash <path to EMAN2 installer>
 }}}
  * You will be prompted for a location to install EMAN2. Note that you cannot rename this folder after installation! You must reinstall if you wish to move the installation
  * You will be asked if you want to add ` export PATH=... ` to your `.profile` file.
  * If you use a different shell, such as tcsh or zsh, you may need to edit the appropriate file yourself.
  * You should not normally need to run the OpenMPI reinstallation scripts. The copy of OpenMPI/Pydusa now distributed with the binaries should work on Linux workstations in most cases.
  * Don't forget to restart your shell if you changed the .profile or other scripts
 1. Run these programs to see if the install worked:
 {{{
e2version.py
e2speedtest.py
e2display.py
e2proc2d.py :64:64:1 test.hdf --process mask.sharp:outer_radius=24
 }}}
 1. If you have problems with any of these programs, the first thing to check is whether you have PYTHONPATH or LD_LIBRARY_PATH set in your shell. While used in previous versions of EMAN, these variables are no longer used, and in some cases may interfere with Anaconda. If they have been set to make some other software package work, but they interfere with the programs above, you will have to unset them, and set them only when you need the other software.
Line 33: Line 47:
{{{
bash <installer>
}}}
== Linux Clusters ==
Line 37: Line 49:
When the installer is done (takes only a few seconds), it will display an instruction to add eman2.bashrc to your login script (or similar, depending on what shell you use).  * Follow the Linux workstation instructions above.
 * When using EMAN2/SPARX/SPHIRE on a cluster, the version of OpenMPI provided with the EMAN2.2 binaries may not be aware of the batch queuing system used to launch jobs on the cluster, and may only be able to run on one node at a time unless you follow the OpenMPI reinstallation instructions below. Follow only ONE of the sets of instructions below.
Line 39: Line 52:
==== Use system OpenMPI and NumPy v1.8 ====
Line 40: Line 54:
=== Additional tips: ===
 * '''Bold text''', you should put the EMAN2 'source' after the EMAN1 'source' in your .bashrc file.
 * List 2
Most Linux clusters will have at least one OpenMPI installation on the cluster. In some cases there may be more than one, and you may have to select a "module" to get the correct one. It is also critical that OpenMPI be compiled with the --disable-dlopen option. If you don't understand this statement, please consult with your cluster sysadmin.
 1. Remove the OpenMPI we provided:
 {{{
bash <path to EMAN2 directory>/utils/uninstall_openmpi.sh
 }}}
 1. Make sure that the correct OpenMPI for your cluster is in your path. You should be able to run 'mpicc' and get a message like 'gcc: no input files'
 1. Rebuild and install Pydusa using the system installed OpenMPI.
 {{{
bash <path to EMAN2 directory>/utils/build_pydusa_numpy.sh 1.8
bash <path to EMAN2 directory>/utils/install_pydusa_numpy.sh 1.8
 }}}

==== Rebuild your own OpenMPI, use NumPy v1.8 ====
This option insures that --disable-dlopen is used when compiling OpenMPI, but may lack some system-specific optimizations provided by your sysadmin.

 1. Remove the OpenMPI we provided:
 {{{
bash <path to EMAN2 directory>/utils/uninstall_openmpi.sh
 }}}
 1. Rebuild OpenMPI.
 {{{
bash <path to EMAN2 directory>/utils/build_and_install_openmpi.sh
 }}}
 1. Rebuild and install Pydusa using the system installed OpenMPI:
 {{{
bash <path to EMAN2 directory>/utils/build_pydusa_numpy.sh 1.8
bash <path to EMAN2 directory>/utils/install_pydusa_numpy.sh 1.8
 }}}

==== Build against a version of NumPy other than the bundled version (NOT RECOMMENDED) ====

OpenMPI doesn't depend on NumPy, so changing to a different NumPy version doesn't require OpenMPI to be rebuilt. However, Pydusa and EMAN2 need to be rebuilt.

 1. Rebuild and install Pydusa against the desired NumPy version.
 {{{
bash <path to EMAN2 directory>/utils/build_pydusa_numpy.sh <list of NumPy version(s)>
bash <path to EMAN2 directory>/utils/install_pydusa_numpy.sh <NumPy version>
bash <path to EMAN2 directory>/utils/build_eman_numpy.sh <list of NumPy version(s)>
bash <path to EMAN2 directory>/utils/install_pydusa_numpy.sh <NumPy version>
 }}}
Line 46: Line 97:
Paragraph.
Line 48: Line 98:
Paragraph. === Native Win7/10 64 bit ===
We are finally able to provide 64 bit Windows binaries for EMAN2. Notes:
 * SPARX/SPHIRE are not supported.
 * EMAN2 functionality may not be complete using this first approach. You may get more complete functionality, but with some additional effort using the Linux/Bash shell approach below.
 * Even for EMAN2, Windows support remains somewhat marginal, and is provided primarily for utility functions and basic GUI tools, like micrograph evaluation and particle picking. Complete refinements may not work well under Windows. You are welcome to ask questions in the mailing list, but there may be limited help we can provide because we simply don't have Windows machines around for testing.
Line 50: Line 104:
Anyway, if you're not deterred by my doom and gloom, we do try to make installation as simple as possible, and it IS possible to use EMAN2 effectively on Windows:  1. Download eman2.X.win64.exe
 1. Launch the installer, and answer any security questions you are prompted for.
 1. In most cases you will want to install: [[https://bitbucket.org/vinay.sajip/pylauncher/downloads/ | Python Launcher]].
Line 52: Line 108:
 * If you have installed previous version of EMAN2. Please uninstall it and remove a directory called c:\tmp\eman2db-***.
 * After installation, try running:
  * e2version.py
  * e2speedtest.py
  * e2display.py
 * Do not try to run EMAN2 programs using desktop Icons. You need to open a command prompt and run the commands from there. Even the GUI tools should be launched this way.
=== Windows 10 - Linux/Bash shell ===
Windows 10 includes an embeded Ubuntu Linux environment. It is possible to run the EMAN2 Linux binaries within this environment, but you will need to install some additional dependencies to do so.
Line 59: Line 111:
== Environement Variable Setting For EMAN2 (All platforms) ==
In some rare cases, the EMAN2 installer will not be able to update your environment variables properly. In such cases, we need set up environment variables like PATH, LD_LIBRARY_PATH and PYTHONPATH for EMAN2 to work correctly.
These environment variables should be automatically set when you run eman-installer script when you install binary EMAN release.
 1. Install "Bash on Windows 10", [[https://www.howtogeek.com/249966/how-to-install-and-use-the-linux-bash-shell-on-windows-10/]].
 1. When prompted to set a user name, enter `root`. This should give you an account without a password.

==== Install OpenGL and X Server, set environment variables ====
 1. Install OpenGL.
 {{{
sudo apt-get update
sudo apt-get install libsm-dev libxrender-dev build-essential libgl1-mesa-dev mesa-utils mesa-common-dev
sudo apt-get autoremove
 }}}

 1. Install [[https://sourceforge.net/projects/xming/ | Xming X Server for Windows]].

 1. Set environment variables.
 {{{
export DISPLAY=:0
glxinfo | grep OpenGL
export KMP_AFFINITY=disabled # per https://github.com/Microsoft/BashOnWindows/issues/785#issuecomment-238079769
 }}}

 1. Download and install `eman2.2.linux64.centos7.sh`.
 1. Start X Server before running eman2 programs
 1. Run these programs to see if the install worked:
 {{{
e2version.py
e2speedtest.py
e2display.py
e2proc2d.py :64:64:1 test.hdf --process mask.sharp:outer_radius=24
 }}}

Binary Installation Instructions

Mac OS X

  1. Download eman2.X.MacOS.sh
  2. Run:
    bash <path to EMAN2 installer>
    • You will be prompted for a location to install EMAN2. Note that you cannot rename this folder after installation! You must reinstall if you wish to move the installation
    • You will be asked if you want to add  export PATH=...  to your .profile file.

    • If you use a different shell, such as tcsh or zsh, you may need to edit the appropriate file yourself.
    • You should not normally need to run the OpenMPI reinstallation scripts. The copy of OpenMPI/Pydusa now distributed with the binaries should work on Macs in most cases.
    • Don't forget to restart your shell if you changed the .profile or other scripts
  3. Run these programs to see if the install worked:
    e2version.py
    e2speedtest.py
    e2display.py
    e2proc2d.py :64:64:1 test.hdf --process mask.sharp:outer_radius=24
  4. If you have problems with any of these programs, the first thing to check is whether you have PYTHONPATH, LD_LIBRARY_PATH or DYLD_LIBRARY_PATH set in your shell. While used in previous versions of EMAN, these variables are no longer necessary. If they are set to make some other software package work, but they interfere with the programs above, you will have to unset them, and set them only when you need the other software.

Linux Workstations (not clusters)

  1. There are two linux binaries available: eman2.X.centos6.sh and eman2.X.centos7.sh
    • if you are using a distribution other than CentOS, which version you need will depend on how old your OS is. I suggest starting with centos7, and only going back to centos6 if it fails.
  2. Run:
    bash <path to EMAN2 installer>
    • You will be prompted for a location to install EMAN2. Note that you cannot rename this folder after installation! You must reinstall if you wish to move the installation
    • You will be asked if you want to add  export PATH=...  to your .profile file.

    • If you use a different shell, such as tcsh or zsh, you may need to edit the appropriate file yourself.
    • You should not normally need to run the OpenMPI reinstallation scripts. The copy of OpenMPI/Pydusa now distributed with the binaries should work on Linux workstations in most cases.
    • Don't forget to restart your shell if you changed the .profile or other scripts
  3. Run these programs to see if the install worked:
    e2version.py
    e2speedtest.py
    e2display.py
    e2proc2d.py :64:64:1 test.hdf --process mask.sharp:outer_radius=24
  4. If you have problems with any of these programs, the first thing to check is whether you have PYTHONPATH or LD_LIBRARY_PATH set in your shell. While used in previous versions of EMAN, these variables are no longer used, and in some cases may interfere with Anaconda. If they have been set to make some other software package work, but they interfere with the programs above, you will have to unset them, and set them only when you need the other software.

Linux Clusters

  • Follow the Linux workstation instructions above.
  • When using EMAN2/SPARX/SPHIRE on a cluster, the version of OpenMPI provided with the EMAN2.2 binaries may not be aware of the batch queuing system used to launch jobs on the cluster, and may only be able to run on one node at a time unless you follow the OpenMPI reinstallation instructions below. Follow only ONE of the sets of instructions below.

Use system OpenMPI and NumPy v1.8

Most Linux clusters will have at least one OpenMPI installation on the cluster. In some cases there may be more than one, and you may have to select a "module" to get the correct one. It is also critical that OpenMPI be compiled with the --disable-dlopen option. If you don't understand this statement, please consult with your cluster sysadmin.

  1. Remove the OpenMPI we provided:
    bash <path to EMAN2 directory>/utils/uninstall_openmpi.sh
  2. Make sure that the correct OpenMPI for your cluster is in your path. You should be able to run 'mpicc' and get a message like 'gcc: no input files'
  3. Rebuild and install Pydusa using the system installed OpenMPI.
    bash <path to EMAN2 directory>/utils/build_pydusa_numpy.sh 1.8
    bash <path to EMAN2 directory>/utils/install_pydusa_numpy.sh 1.8

Rebuild your own OpenMPI, use NumPy v1.8

This option insures that --disable-dlopen is used when compiling OpenMPI, but may lack some system-specific optimizations provided by your sysadmin.

  1. Remove the OpenMPI we provided:
    bash <path to EMAN2 directory>/utils/uninstall_openmpi.sh
  2. Rebuild OpenMPI.
    bash <path to EMAN2 directory>/utils/build_and_install_openmpi.sh
  3. Rebuild and install Pydusa using the system installed OpenMPI:
    bash <path to EMAN2 directory>/utils/build_pydusa_numpy.sh 1.8
    bash <path to EMAN2 directory>/utils/install_pydusa_numpy.sh 1.8

Build against a version of NumPy other than the bundled version (NOT RECOMMENDED)

OpenMPI doesn't depend on NumPy, so changing to a different NumPy version doesn't require OpenMPI to be rebuilt. However, Pydusa and EMAN2 need to be rebuilt.

  1. Rebuild and install Pydusa against the desired NumPy version.

    bash <path to EMAN2 directory>/utils/build_pydusa_numpy.sh   <list of NumPy version(s)>
    bash <path to EMAN2 directory>/utils/install_pydusa_numpy.sh <NumPy version>
    bash <path to EMAN2 directory>/utils/build_eman_numpy.sh     <list of NumPy version(s)>
    bash <path to EMAN2 directory>/utils/install_pydusa_numpy.sh <NumPy version>

Windows

Native Win7/10 64 bit

We are finally able to provide 64 bit Windows binaries for EMAN2. Notes:

  • SPARX/SPHIRE are not supported.
  • EMAN2 functionality may not be complete using this first approach. You may get more complete functionality, but with some additional effort using the Linux/Bash shell approach below.
  • Even for EMAN2, Windows support remains somewhat marginal, and is provided primarily for utility functions and basic GUI tools, like micrograph evaluation and particle picking. Complete refinements may not work well under Windows. You are welcome to ask questions in the mailing list, but there may be limited help we can provide because we simply don't have Windows machines around for testing.
  • Download eman2.X.win64.exe
  • Launch the installer, and answer any security questions you are prompted for.
  • In most cases you will want to install: Python Launcher.

Windows 10 - Linux/Bash shell

Windows 10 includes an embeded Ubuntu Linux environment. It is possible to run the EMAN2 Linux binaries within this environment, but you will need to install some additional dependencies to do so.

  1. Install "Bash on Windows 10", https://www.howtogeek.com/249966/how-to-install-and-use-the-linux-bash-shell-on-windows-10/.

  2. When prompted to set a user name, enter root. This should give you an account without a password.

Install OpenGL and X Server, set environment variables

  1. Install OpenGL.
    sudo apt-get update
    sudo apt-get install libsm-dev libxrender-dev build-essential libgl1-mesa-dev mesa-utils mesa-common-dev
    sudo apt-get autoremove
  2. Install Xming X Server for Windows.

  3. Set environment variables.
    export DISPLAY=:0
    glxinfo | grep OpenGL
    export KMP_AFFINITY=disabled # per https://github.com/Microsoft/BashOnWindows/issues/785#issuecomment-238079769
  4. Download and install eman2.2.linux64.centos7.sh.

  5. Start X Server before running eman2 programs
  6. Run these programs to see if the install worked:
    e2version.py
    e2speedtest.py
    e2display.py
    e2proc2d.py :64:64:1 test.hdf --process mask.sharp:outer_radius=24

EMAN2/Install/BinaryInstallAnaconda/ContinuousBuild (last edited 2023-02-19 20:09:56 by TunayDurmaz)