Installation

E-Cell 3 Will work in most modern Unix-like systems. Windows build is supported now with a separate build system that resides in build/msvc.

Building Prerequisite

  1. GNU compiler collections (version 3.1 or later)
  2. Python version 2.3 or later
  3. Boost C++ libraries (version 1.33.0 or later)
  4. GNU scientific library (GSL) (version 1.8 or later)
  5. NumPy (version 1.0 or later, >= 1.0.3 is recommended)
  6. (optional) PyGTK (version 2.0 or later, >= 2.6 is recommended) -- only needed to build GUI frontends.
    Notes:
    • Glade support is also needed to get the frontend to work, so libglade of a version that satisifies the PyGTK requisuite has to be installed beforehand.
    • if you wish to use E-Cell on a headless environment, specify --disable-gui option to configure script. Otherwise configure will fail with an error in the check of PyGTK installation.
  7. (optional) GNOME-Python (version 2.0 or later, >= 2.6 is recommended) -- only needed to build GUI frontends.
  8. (optional) libsbml (version 2.x) -- needed for SBML support. At the time of writing the latest version of the 2.x series is 2.3.5. libsbml 3.x series are not supported due to significant API differences.
  9. (optional) doxygen -- neeeded to generate API reference The documentation is currently incomplete.
  10. (optional) docbook-tools -- needed to generate users manual It is most likely provided as docbook-utils package in many distros.

Building

  1. Run configure script that resides at the top of the source package.
    $ ./configure [--prefix=...] [--...]}}}
    
    NOTE: you need to run autogen.sh before running this in case you have obtained the source from the repository.
  2. Type make to start building
    $ make
    
  3. Run make install with the sufficient permissions to complete the installation. Typically sudo or su is used to get authorized.
    $ sudo make install
    

You may find the following options to configure are useful.

  --with-numpy-includes=DIR    Specify this when numpy is installed
                               under non-standard installation directory.

  --disable-gui                Specify to disable building GUI frontends.

FAQ

  • Where can I find the windows installer of E-Cell 3?
    Windows version can be downloaded from here.
  • How do I update an older version of E-Cell3 to the latest version?
    If you still have a build directory in your box (therefore it is assumed that you have built and installed E-Cell from the source,) then go to that directory and type "make uninstall". For windows, please uninstall your old version of E-Cell first by hitting "Start Menu" and select [Program Files]-[E-CELL3]-[Uninstall E-Cell3].

How to get your E-Cell 3 best optimized

  • If your processor is SSE2-enabled, (for example, Pentium-4, Xeon, newer Celeron, Athlon-xp, Athlon-mp, or Athlon-4) and your compiler is gcc-3.2 or newer, configuring the system with the following procedure may result in considerably faster binaries.
  CXXFLAGS="-O2 -mfpmath=sse -msse2" ./configure

It should run on any CPUs that support SSE2 instructions.

This is the default on the x86-64 architecture.

  • In addition, specifying the target architecture like -march=pentium4 or -march=athlon-mp will even optimize the code, but can limit portability of the code.
  • On MinGW (MS Windows), when you compile other libraries such as gsl, which has configure script, you can also use the following flags during configure:
   CXXFLAGS="-O2 -mfpmath=sse -msse2 -fno-rtti" CFLAGS="-O2 -mfpmath=sse -msse2" LDFLAGS="-Wl,-s" ./configure --prefix=/usr
  • For boost, use the following line:
   bjam "-sTOOLS=mingw" "-sBUILD=release <cxxflags>-O3/<cxxflags>-mfpmath=sse/<cxxflags>-msse2/<linkflags>-Wl,-s"
  • -Wl,-s is used for stripping and results in much smaller libraries (upto almost 60-70% smaller)