Differences between revisions 3 and 4
Revision 3 as of 2009-07-24 17:22:46
Size: 640
Editor: bcm-10-134
Comment:
Revision 4 as of 2010-04-01 14:01:09
Size: 3999
Editor: SteveLudtke
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
 * We collect all these dependent packages under this [[http://ncmi.bcm.edu/ncmi/software/counter_222/software_91/index_html|link]]. These may not be the current versions of EMAN2 dependent libraries, but they are versions we have tried to compile from source and proved works for EMAN2.  * For linux, the easiest approach for most distributions is to simply install the dependencies using your package manager. If you are using a RedHat derivative, you will need the -devel packages as well as the library packages
 * For the mac, if you use one of the open-source package managers for the Mac, you can probably do something similar, but note that EMAN2 DOES work very well with the system-provided Python under snow-leopard, and the package managers tend to force you to use their own compilation of things like Python. On my Mac (Steve) I built the dependencies from source and installed under /usr/local.
 * There is a collection of dependencies at [[http://ncmi.bcm.edu/ncmi/software/counter_222/software_91/index_html|link]]. These may not all be the most recent version but they are versions we have compiled from source and proved that they work with EMAN2. In virtually all cases, newer versions will also be fine.

Here is a current list of dependencies (all can be obtained for free):
||OpenGL||-||Required||You MUST have some version of OpenGL installed. On most modern machines this will already be installed, and hardware accelerated. Under Linux, make SURE you are using the appropriate proprietary driver||
||GLUT||-||Required||Standard OpenGL utility library, usually already installed. FreeGLUT is an acceptable alternative||
||Python2.x||[www.python.org]||Required||Not required to compile, but required to use. Use 2.5.x or 2.6.x. 3.x not supported at this time||
||Qt||[ftp://ftp.qt.nokia.com/qt/source/]||Required||Not required to compile, but required to use. Much better to just use a package manager to get it. If compiling yourself, use recent qt-everywhere-opensource-src.||
||PyQt||[http://www.riverbankcomputing.co.uk/news]||Required||Make sure the Qt you download is compatible with the PyQt you download. Building PyQt also requires Sip||
||matplotlib||[http://matplotlib.sourceforge.net]||Required||Not required to compile, but required to use. Used for all 2-D plotting||
||BerkelyDB||[http://www.oracle.com/technology/products/berkeley-db/index.html]||Required||Not required to compile, but required to use. Basis for most data storage during processing. Embedded, NOT relational database. Free||
||pybsddb/bsddb3||[http://www.jcea.es/programacion/pybsddb.htm]]||Required||Not required to compile, but required to use. A version of this, called bsddb comes with Python. Do NOT use that one (generally out of date). This can be installed with easy_install in most cases||
||Boost||[www.boost.org]||Required||suggest 1.38 or higher||
||FFTW3||[www.fftw.org]||Recommended||If you need to use EMAN2 under the optional BSD license, you will need to use the built-in FFT instead of FFTW. Otherwise you definitely want this.||
||HDF5||[http://www.hdfgroup.org]||Recommended||While not strictly required to compile, this is the recommended data format for many purposes. Install it.||
||FTGL||[http://sourceforge.net/projects/ftgl]]||Optional||You may lack some text display in image/volume display GUI widgets without this||
||libjpeg||[http://sourceforge.net/projects/libjpeg/]||Optional||If you have this, you will be able to convert images to this format for presentations, etc. NOT useful as a cryoEM data storage format||
||libpng||[http://www.libpng.org/pub/png/libpng.html||Optional||This will permit you to read/write PNG format images. A better choice than JPEG for scientific data presentation in most cases (lossless)||
||libtiff||[http:http://www.libtiff.org/||Optional||Support reading/writing 8/16 bit TIFFs. Almost a requirement, as most CCD cameras store in this format.||

External Libraries

EMAN2 has lots of dependent libraries. To compile EMAN2 from source, you need install development packages for these external libraries. Depends on your Linux distribution, you can either install them by yum(Fedora, CentOS, RedHat), urpmi(Mandriva), yast(SuSE), synaptic/apt-get(Ubuntu). Or compile them form source code.

  • For linux, the easiest approach for most distributions is to simply install the dependencies using your package manager. If you are using a RedHat derivative, you will need the -devel packages as well as the library packages

  • For the mac, if you use one of the open-source package managers for the Mac, you can probably do something similar, but note that EMAN2 DOES work very well with the system-provided Python under snow-leopard, and the package managers tend to force you to use their own compilation of things like Python. On my Mac (Steve) I built the dependencies from source and installed under /usr/local.
  • There is a collection of dependencies at link. These may not all be the most recent version but they are versions we have compiled from source and proved that they work with EMAN2. In virtually all cases, newer versions will also be fine.

Here is a current list of dependencies (all can be obtained for free):

OpenGL

-

Required

You MUST have some version of OpenGL installed. On most modern machines this will already be installed, and hardware accelerated. Under Linux, make SURE you are using the appropriate proprietary driver

GLUT

-

Required

Standard OpenGL utility library, usually already installed. FreeGLUT is an acceptable alternative

Python2.x

[www.python.org]

Required

Not required to compile, but required to use. Use 2.5.x or 2.6.x. 3.x not supported at this time

Qt

[ftp://ftp.qt.nokia.com/qt/source/]||Required||Not required to compile, but required to use. Much better to just use a package manager to get it. If compiling yourself, use recent qt-everywhere-opensource-src.

PyQt

[http://www.riverbankcomputing.co.uk/news]||Required||Make sure the Qt you download is compatible with the PyQt you download. Building PyQt also requires Sip

matplotlib

[http://matplotlib.sourceforge.net]||Required||Not required to compile, but required to use. Used for all 2-D plotting

BerkelyDB

[http://www.oracle.com/technology/products/berkeley-db/index.html]||Required||Not required to compile, but required to use. Basis for most data storage during processing. Embedded, NOT relational database. Free

pybsddb/bsddb3

[http://www.jcea.es/programacion/pybsddb.htm]]||Required||Not required to compile, but required to use. A version of this, called bsddb comes with Python. Do NOT use that one (generally out of date). This can be installed with easy_install in most cases

Boost

[www.boost.org]

Required

suggest 1.38 or higher

FFTW3

[www.fftw.org]

Recommended

If you need to use EMAN2 under the optional BSD license, you will need to use the built-in FFT instead of FFTW. Otherwise you definitely want this.

HDF5

[http://www.hdfgroup.org]||Recommended||While not strictly required to compile, this is the recommended data format for many purposes. Install it.

FTGL

[http://sourceforge.net/projects/ftgl]]||Optional||You may lack some text display in image/volume display GUI widgets without this

libjpeg

[http://sourceforge.net/projects/libjpeg/]||Optional||If you have this, you will be able to convert images to this format for presentations, etc. NOT useful as a cryoEM data storage format

libpng

[http://www.libpng.org/pub/png/libpng.html||Optional||This will permit you to read/write PNG format images. A better choice than JPEG for scientific data presentation in most cases (lossless)

libtiff

[http:http://www.libtiff.org/||Optional||Support reading/writing 8/16 bit TIFFs. Almost a requirement, as most CCD cameras store in this format.

EMAN2/ExternalLibraries (last edited 2012-07-31 19:58:46 by gtang)