This page describes the installation procedure of this preliminary release of EggLib 3.


EggLib requires Python version 2.7. If you plan to compile EggLib from source, you’ll need the development libraries for your version of Python. For using functions of the wrappers module, the corresponding program must be found in your system and EggLib should be configured accordingly (see Application paths).


EggLib now comes as a single Python package (the C++ code of the underlying library is included in this package).

Packages for the version 3.0.0b21 are available here:

All distributed packages include a doc directory that contains a copy of the HTML documentation available from the web site.

See Released versions for the list of released packages for all previous versions.


From source

The installation of the EggLib package is relatively standard. First, unpack the source package and archive and move to the new directory. Then, issue the following commands:

python build

And (may require administrator/super-user rights):

python install

That that should be it. The setup script takes standard Python Distutils options (see In addition, the following options are available for the build command:

  • idir=path – specify an include directory.
  • ldir=path – specify a link directory.
  • lname=name – specify a library name to link with.
  • cflag=flag – specify an explicit CFLAG.
  • lflag=flag – specify an explicit LFLAG.
  • enable-abc=F – if T, compile the ABC class (requires the GNU Scientific Library).

At this point, you probably won’t need to use any the above. It is recommended to leave the enable-abc option to its default value (F).

Pre-compiled package for Windows

The package contains an interactive installer, named egglib-3.0.0b21.win32-py2.7.exe for the last version, which can be executed directly and will install the EggLib package to yout Python distribution.

Pre-compiled package for MacOSX

The package contains an archive named egglib-3.0.0b21.macosx-10.11-intel.tar.gz. and a script

To install, you need to run the following command: python egglib-3.0.0b21.macosx-10.11-intel.tar.gz.

This command requires that you have administration rights.

Configuring external applications

If external applications are needed (one is required for every function of the wrappers module), they are must be configured. By default, EggLib will assume that the corresponding programs are absent and will not attempt to run them. The best way consists in providing the command allowing to run the programs to the wrappers module, which can be done permanently or temporarily. For details, see Application paths.


After installing EggLib, if the following script runs without errors and prints the right version as well a few nucleotide sequences, EggLib is probably installed properly:

import egglib
print egglib.version
m = egglib.coalesce.Simulator(1, num_chrom=(6,), theta=8.0)
a = m.simul()
print a.to_fasta(mapping='ACGT')