Installation of Required SoftwareΒΆ
Note
Not all software listed here is required for every installation of MiModD.
You should consult the requirements section for the particular installation you are trying to perform to learn what you will need.
- C/C++ compiler package : a current version of gcc/g++ or Clang
gcc and g++ come pre-installed with many, but not all flavors of Linux (e.g., Fedora is a popular distribution that ships without).
Try:
gcc --version
and:
g++ --version
from the command line to see whether you have them available on your system.
If not, you should be able to install them through your OS package manager (in Fedora the necessary packages are called gcc and gcc-c++).
OS X comes without a compiler package, but such a package is part of the Command Line Tools of Apple’s Xcode developer toolset. The simplest way to obtain the Command Line Tools varies between OS X releases, but here is one that is supposed to work on 10.9 Mavericks.
- zlib library : v1.2.5 or higher
Most OS come with the zlib library installed. If you do not have it or if your system has an outdated version, you can either
install a current version through your OS package manager or
download it from http://zlib.net/ (the download link for the latest version is about halfway down the page), then from inside the unpacked archive run this series of steps from a terminal:
./configure make make install
If you have zlib preinstalled or if you have installed it through a package manager, then, depending on your OS, the installation may not contain the C header files required by MiModD during installation from source. If you are getting a corresponding MiModD install error message, you will need to install a separate zlib development package (e.g., zlib1g-dev on Debian/Ubuntu or zlib-devel on Red Hat/Fedora).
- Python 3 : v3.2 or higher
You can run:
python3 --version
from a terminal to see which version, if any, of Python 3 you have installed on your system. If your version does not match the requirement, you can check whether there is a suitable package available through your OS package manager or download the latest version from http://www.python.org/downloads/. For OS X we strongly recommend the second option.
If you have Python 3 preinstalled or if you have installed it through a package manager, then, depending on your OS, the installation may not contain the Python C header files required by MiModD during installation from source. If you are getting a corresponding MiModD install error message, you will need to separately install a python3 development package (e.g., python3-dev on Debian/Ubuntu or python3-devel on Red Hat/Fedora).
If you are compiling Python 3 from source, make sure your build includes the following modules:
zlib
This module is required for MiModD core functionality.
To get it built it is enough to install the zlib library including its header files before you build Python 3.
_ssl
This module is required for the pip installer and building it requires an OpenSSL library plus C header files installed on your system.
_sqlite3
This module is required only if you plan to use the R/rpy2-dependent plotting functionality of the MiModD NacreousMap engine. It requires the SQLite3 library plus header files to be built.
pip : any recent version
The standard installation of MiModD uses the pip installation tool to install the package from its online repository into your system’s Python 3 library.
Recent versions of Python often come with pip pre-installed, but if your Python does not have it, the recommended way to obtain pip is to download get-pip.py, a platform-independent installation script, then install pip for your Python 3 with (this may require administrator rights):
python3 <path/to>/get-pip.py, where you should replace
<path/to>with the path to your downloaded file.Note
Recent versions of pip are no longer compatible with Python3.2. If you are using this version of Python, you will have to obtain the 3.2-compatible copy of get-pip.py. Then after installing pip like above, you will have to ignore any warnings to upgrade to the latest version of pip (which would be non-functional for you).