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/
On Debian based system:
sudo aptitude install libev-dev libgdbm-dev libncurses5-dev libpcre3-dev \
libssl-dev libsqlite3-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
