All platforms

When upgrading to a newer version, BEFORE downloading/untaring the new version, you MUST run

e2bdb.py -c

This will clean up the cache and make sure you don't have any running EMAN2 jobs while you do the upgrade. While unlikely, failing to do this could result in corruption of some files. If you do forget, and don't want to reinstall the old version, you will need to 'rm -rf /tmp/eman2db-*' to remove all old cache files. Normally this will be safe as long as no EMAN2 programs are actively running, and nothing crashed.

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 those compiling from source. Instead, we suggest just running the following 3 basic tests:

Mac OS X

Mac OS X 10.5 and 10.6 are supported for EMAN2 nightly builds. The build is fully 64 bit on 10.6, and this package is recommended and tested more regularly. Download the appropriate dmg from the nightly build page, copy "EMAN2" to your "/Applications" folder. Instructions on loading the environment variable init script are included in the README.txt file.

There is a visual installation guide that explains the process with screenshots.

Linux

Note: In the following installation instruction, I suppose the EMAN2 will be install into home directory. So I use my home directory "/home/gtang" as an example. EMAN2 provide four nightly builds for Linux: eman2.nightly.linux.tar.bz2 and eman2.daily.linux.tar.bz2 are for 32 bit Linux (i386). eman2.daily.linux64.tar.bz2 and eman2.daily.linux64.gcc4.tar.bz2 are for 64 bit Linux (x86_64). The gcc4 version requires glibc version at least 2.5. We recommand you install gcc4 version of EMAN2 unless you are running a linux release several years ago. If you are not sure, you can check you glibc version by '/sbin/ldconfig -V'. If you are not sure your linux is 32 bit or 64 bit. You can check with command 'uname -r'. If you see x86_64 that means your linux is 64 bit. Otherwise it's 32 bit linux. To install this binary release, for example, on 64 bit Linux: download eman2.daily.linux64.gcc4.tar.bz2 to your home directory.

$tar xvjf eman2.daily.linux64.gcc4.tar.bz2
$cd EMAN2
$./eman2-installer

Then you will see at the end of the output:

Please add the following line to the end of your /home/gtang/.bashrc
source /home/gtang/EMAN2/eman2.bashrc

This eman2.bashrc just provide some environment variables for EMAN2 and sparx. You can either add the source line to your .bashrc, or copy all the environment variable setting in eman2.bashrc into your.bashrc file:

$gedit /home/gtang/.bashrc

Then add the given source line to the file. Note: if you are using some kind of c shell, you will see the eman2.chsrc file.

This completes the installation. You can try running 'e2speedtest.py' and 'e2display.py' in a new terminal window. If they both work, everything should be installed properly.

NOTE: EMAN2 on Linux ships with its own Python interpreter. The eman2-installer will automatically change the python interpreter in the EMAN2 python files to use this version of Python. For example:

#!/home/username/EMAN2/python/Python-2.6.5-ucs4/bin/python

If you wish to write your own EMAN2 scripts, you will need to use this same Python interpreter, or 'import EMAN2' will fail !

NOTE: Ubuntu users A package called 'freeglut' is not always installed on Ubuntu machines, and may be required for 2-D plots (such as interactive CTF tuning). If you see blank windows when you expect to see plots, please use the package manager to install freeglut.

Windows

Environement Variable Setting For EMAN2

We need set up environment variables like PATH, LD_LIBRARY_PATH and PYTHONPATH for EMAN2 to work correctly, in case the EMAN2 installer does not set them up for you successfully.

These environment variables will be automatically set when you run eman-installer script when you install binary EMAN release.

But for people compile from source and other diagnosis purpose, user may want to know how those environment variables should be set.

export EMAN2DIR=${HOME}/EMAN2
export PATH=${PATH}:${EMAN2DIR}/bin
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${EMAN2DIR}/lib
export PYTHONPATH=${PYTHON_PATH}:${EMAN2DIR}/lib

setenv EMAN2DIR ${HOME}/EMAN2
setenv PATH ${PATH}:${EMAN2DIR}/bin
setenv LD_LIBRARY_PATH ${EMAN2DIR}/lib    #setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${EMAN2DIR}/lib if you have LD_LIBRARY_PATH set
setenv PYTHONPATH ${EMAN2DIR}/lib         #setenv PYTHONPATH ${PYTHONPATH}:${EMAN2DIR}/lib  if you have PYTHONPATH set

right click "my computer"->properties->Advanced->Environment Variables, in "system variables"edit the "path" entry,
-> then add following value into it: C:\EMAN2\bin;C:\EMAN2\lib;C:\EMAN2\python\Python27;C:\EMAN2\python\Python27\Lib\site-packages\PyQt4\bin.
Create a new system variable PYTHONPATH, add following value into it: C:\EMAN2\lib;C:\EMAN2\bin. (note: In the example I suppose you install
EMAN2 into C:\ directory, change it accordingly if you install EMAN2 in other directory.)