3 ------------------------------------------------------------------
8 ocaml (Version >= 3.11 but may work with some
9 earlier versions with limited features)
10 camlp4 (and camlp4rf etc.)
11 ocamlduce recommanded (otherwise you won't have all the features)
12 (same version as ocaml)
17 ocamlnet >= 2.2.0 (actually only modules netstring, netsys, pcre)
18 ocamlssl (sometimes called libssl-ocaml) >= 0.4.4
19 ocamlsqlite3 >= 0.21.0 (needs sqlite)
20 (You may also use the dbm database (for example gdbm) instead of sqlite.
21 In that case, you need dbm with headers (libgdbm-dev package for ex))
22 camlzip (libzip-ocaml)
26 If ocaml/ocamlduce/ocamlfind/ocamlnet/ocamlssl...
27 are not installed on your computer,
28 you can use GODI to install them automatically.
29 See http://godi.ocaml-programming.de
37 sh configure [options]
39 Print the list of possible options using:
42 Warning: Ocamlduce is now enabled by default.
43 If you do not have ocamlduce installed, do
44 sh configure --disable-ocamlduce
46 (For example if you have an old version of ocamlnet (< 2.0) you need
47 ./configure --disable-newocamlnet
48 Use this option if you get a message telling that netsys.cma is missing)
50 (For example if you want to install all Ocsigen files in a separate directory:
51 ./configure --root /mydirectory --prefix "" --libdir /mylibdir --ocsigen-user myuser --ocsigen-group mygroup
52 Note that /mylibdir is relative to /mydirectory (--root value))
54 If you want to compile a native code version of Ocsigen, you'll need
55 a modified version of OCaml, that allows dynlinking of
57 (natdynlink branch in OCaml's CVS, by Alain Frisch).
58 It will be included in OCaml 3.11.0.
59 If you have it, use ./configure --enable-nativecode
62 Verify that Makefile.config is OK
68 To generate the documentation:
71 If you want system-wide installation, become root, and do
75 if you want logrotate (rotation of logs) configuration in /etc/logrotate.d
78 (make installnodoc -> to install without the documentation
79 make uninstall -> uninstall (almost) everything)
81 Adapt the config file to set the port, the modules you want to load
82 (by default the config file is /etc/ocsigen/ocsigen.conf,
83 generated from files/ocsigen.conf.in,
84 but you can specify another one: ocsigen -c configfile)
85 Set the user and group that will run ocsigen and
86 verify he has read access to
87 - the modules you load,
89 - and rwx access to log directory.
92 To run the web server:
96 Then you can connect to the server with your browser:
100 If you are not root, you cannot use port 80.
101 Modify the config file to set for example port 8080 for you server.
102 (and use http://localhost:8080)
104 If you did not do make install, you can run for example
105 CAML_LD_LIBRARY_PATH=server server/ocsigen -c ocsigen.conf.local
106 that launch a server on port 8080 with user permissions on local directory
107 (ocsigen.conf.local is a sample that may be overwritten by make.
108 Copy it if you want to modify it).
110 Be aware that the server needs C stubs which are compiled into the
111 shared library dllocsigen.so. It is built in the server directory, and
112 this location must be documented in the CAML_LD_LIBRARY_PATH
113 environment variable when dllocsigen.so is not installed in a
114 system-wide location.
116 If it does not work, look at the logs or run ocsigen with options -v or -V
117 (verbose and debug mode)
119 See the file modules/tutorial.ml for a tutorial or http://www.ocsigen.org
121 If you make install, it will generate and install the documentation.
122 Otherwise, you can generate it in the doc directory by typing:
125 By default, the tutorial is configured at URL /
126 and Miniwiki at URL /miniwiki
129 ------------------------------------------------------------------
130 For debugging purpose, there is now a toplevel with all ocsigen
131 libraries loaded (very experimental). Example of use:
133 CAML_LD_LIBRARY_PATH=server ledit ./server/ocsigentop -I /usr/local/lib/ocaml/3.10.1/lwt -I /usr/local/lib/ocaml/3.10.1/ocsigen -I +camlp4 -I +camlp4/Camlp4Parsers -I ./baselib -I ./server
134 Objective Caml version 3.10.1
138 # Ocsigen_loader.add_ocamlpath "/usr/local/lib/ocsigen/METAS";;
143 ------------------------------------------------------------------
145 ------------------------------------------------------------------
149 (project coordinator, Web server, Ocsigenmod, Eliom, Staticmod, xhtml syntax extension, documentation, Ocsimore, extension mechanism, Ocsidbm, Ocsipersist with DBM ...)
151 (lwt library, Web server)
153 (Xhtml syntax extension for OCaml 3.10, Ocsipersist with SQLite, CGI module, forms in Eliom, deflatemod ...)
155 (http protocol, Web server)
161 (most of the functions generating xhtml (xML and xHTML modules))
184 and thanks to my (other) students who took part to the very first version:
190 Julien Mineraud (Xhtmlpp - xhtml pretty-printing)