Main > Reference Manual > Download and install > Installing on Linux, Unix and Cygwin > Build instructions

For debian and red hat systems source packages are available that make building the software easier:

  1. Build instructions for Debian-based linux systems - source deb package
  2. Build instructions for Red Hat-based linux systems - source rpm package

The following describes the generic steps you need to build frePPLe from the source code.
FrePPLe uses a very standard build process, based on the automake suite.

  1. Download the source code.
    The released version is available at http://sourceforge.net/project/showfiles.php?group_id=166214
    A snapshot of the latest version of the code can be downloaded from http://frepple.svn.sourceforge.net/viewvc/frepple/trunk.tar.gz?view=tar
  2. Update your system with the development software packages.
    • gcc, v3.4 or higher
      Front end for the GNU compiler suite.
    • gcc-c++, compatible with gcc release
      GNU C++ compiler.
    • xerces-c, 3.0 or 3.1
      Xerces is a validating XML parser provided by the Apache Foundation.
      You need to install the libraries as well as the development libraries.
    • python v2.5 - v2.6 - v2.7
      Python is a modern, easy to learn interpreted programming language.
      See http://www.python.org for more information. The language is used to a) run the test suite, b) script custom logic in frePPLe and c) to run the web application framework Django.
      You need to install the language as well as the development libraries.
  3. Issue the command './configure' in the installation directory to specify the build options and detect the specifics of your platform.
    Use the command './configure --help' to see the list of available options.
  4. Issue the command 'make all' to compile the code.
  5. Optionally, issue the command 'make check' to run the test suite.
    Not all tests are currently passing, so you shouldn't be worried about a couple of failures. :-)
  6. Issue the command 'make install' to install the files.
  7. You can issue the command 'make clean' to free the disk space used during the build and test phases.
  8. Optionally, if you are interested in some of the add-ons in the contrib subdirectory, follow the instructions in the README.txt file in each of the add-on directory.
    You may need to install additional software components for a certain add-on.
    As a reference, here is a brief summary list of those components:
    • Django, v1.3
      A web application framework written in Python.
      FrePPLe supports PostgreSQL, MySQL, Oracle and SQLite as the database.
      In addition Django needs the Python database driver for your database, the apache web server (see http://httpd.apache.org/) and mod_wsgi (see http://code.google.com/p/modwsgi/).
      See this page for more detailed instructions on installing the user interface.
    • GLPK, any recent version should do
      The GLPK (GNU Linear Programming Kit) package is intended for solving large-scale linear programming (LP), mixed integer programming (MIP) and other related problems. It can be downloaded from http://www.gnu.org/software/glpk/glpk.html
The following components are only relevant when working in Windows:
  • NSIS, version greater or equal to 2.07
    NSIS, which stands for "Nullsoft Scriptable Installation System", is a free scriptable win32 installer/uninstaller system that doesn't suck and isn't huge.
    This program can be downloaded from http://nsis.sf.net and you'll only need it if you are planning to create a windows installation package.
  • py2exe, 0.6.9 or later
    Py2exe is a Python Distutils extension which converts Python scripts into executable Windows programs, able to run without requiring a Python installation.
    The software is used only when creating the windows installer. It can be downloaded from http://www.py2exe.org/.
  • CherryPy, version 3.1.2 or later
    CherryPy is a pythonic, object-oriented HTTP framework.
    FrePPLe uses it as web server embedded in the Windows stand-alone application. The software is used only when creating the windows installer. It can be downloaded from http://www.cherrypy.org/.
  • PyWin32, 214 or later
    PyWin32 is an interface to Windows APIs from Python.
    FrePPLe uses this component to run the CherryPy web server as a service. The download location is http://sourceforge.net/projects/pywin32/.
  1. Optionally, you can use the FREPPLE_HOME environment variable to point to your installation directory.
    See the section on environment variables for other environment variables that influence frePPLe and may need updating.