Ocsigen platform installation
Binary distribution ¶
Ocsigen is available in some software distributions, e.g.:
- Debian (good support) and Ubuntu (Currently, only ocsigen 1.3.4 is available)
- Gentoo (Currently, only ocsigen 1.3.4 is available)
If your distribution has all the packages you need, this is probably the simplest way to install Ocsigen software.
Source compilation ¶
If the latest version of Ocsigen is not available in your distribution or if you want to install a development version, you may compile the whole Ocsigen platform with one of the following techniques:
- The Ocsigen bundle ease the compilation of the Ocsigen platform and its OCaml library dependencies.
- The Godi source code distribution usually provides the latest Ocsigen releases.
- Downloads and compile each project individually.
Individual source package ¶
The Ocsigen platform as a lot of dependencies, and building each project individually may be a long process. Here the consolidated list of dependencies in the order you may build them.
Consolidated dependencies
C libraries ¶
- libev: http://software.schmorp.de/pkg/libev.html
- gdbm: http://directory.fsf.org/project/gdbm/
- ncurses: http://invisible-island.net/ncurses/
- pcre3: http://www.pcre.org/
- openssl: http://www.openssl.org/
- sqlite3 (optionnal): http://www.sqlite.org/
- cairo (optional): http://www.cairographics.org/
On Debian based system:
sudo aptitude install libev-dev libgdbm-dev libncurses5-dev libpcre3-dev \
libssl-dev libsqlite3-dev libcairo-ocaml-dev
OCaml libraries
- ocaml (>= 3.12): http://www.ocaml.org
- findlib : http://projects.camlcity.org/projects/findlib.html
- react: http://erratique.ch/software/react
- ocamlssl: http://sourceforge.net/projects/savonet/files/ocaml-ssl/
- pcre-ocaml: http://www.ocaml.info/home/ocaml_sources.html#pcre-ocaml
- ocamlnet: http://projects.camlcity.org/projects/ocamlnet.html
- cryptokit: http://pauillac.inria.fr/~xleroy/software.html#cryptokit
- ocaml-text: http://forge.ocamlcore.org/projects/ocaml-text/
- calendar: https://forge.ocamlcore.org/projects/calendar/
On Debian based system:
sudo aptitude install ocaml ocaml-compiler-libs \
camlp4 camlp4-extra \
ocaml-findlib libfindlib-ocaml-dev \
libreact-ocaml-dev libssl-ocaml-dev libpcre-ocaml-dev \
libcryptokit-ocaml-dev libtext-ocaml-dev \
libcalendar-ocaml-dev libocamlnet-dev
Optionnal OCaml libraries
- ocamlsqlite3: http://www.ocaml.info/home/ocaml_sources.html#ocaml-sqlite3
- camlzip: http://pauillac.inria.fr/~xleroy/software.html#camlzip
- ocamlduce: https://forge.ocamlcore.org/projects/ocamlduce/
- type-conv: http://ocaml.janestreet.com/?q=node/13
On Debian based system:
sudo aptitude install libsqlite3-ocaml-dev libzip-ocaml-dev \
libtype-conv-camlp4-dev ocamlduce
Build each projects separately
As this step, you may build the Ocsigen platform in this order:
- Lwt (enable at least ssl and react support)
- deriving-ocsigen
- Js_of_ocaml
- TyXML
- Ocsigen Server
- Eliom
Consolidated dependencies for Ocsimore
External C libraries
- linux-pam: http://www.kernel.org/pub/linux/libs/pam/
- postgresql: http://www.postgresql.org/
On Debian based system:
sudo aptitude install libpam0g-dev postgresql
External OCaml libraries
- extlib: http://code.google.com/p/ocaml-extlib/
- csv: https://forge.ocamlcore.org/projects/csv/
- pgocaml: http://pgocaml.berlios.de/
- ocamlpam: http://sharvil.nanavati.net/projects/ocamlpam/
On Debian based system:
sudo aptitude install libextlib-ocaml-dev libcsv-ocaml-dev libpgocaml-ocaml-dev libpam-ocaml-dev
