1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128
|
******************************************************************************
INSTALL - Netstring, string processing functions for the net
******************************************************************************
==============================================================================
The "Netstring" package
==============================================================================
------------------------------------------------------------------------------
Prerequisites
------------------------------------------------------------------------------
Netstring does not need any other packages besides the O'Caml core. Netstring
needs at least O'Caml 3.00. The installation procedure defined in the Makefile
requires findlib [1] to work [2].
------------------------------------------------------------------------------
Configuration
------------------------------------------------------------------------------
It is not necessary to configure "Netstring".
------------------------------------------------------------------------------
Compilation
------------------------------------------------------------------------------
The Makefile defines the following goals:
- make all
compiles with the bytecode compiler and creates netstring.cma,
netstring_mt.cmo, netstring_top.cmo, netmappings_iso.cmo, and
netmappings_other.cmo
- make opt
compiles with the native compiler and creates netstring.cmxa,
netstring_mt.cmx, netmappings_iso.cmx, and netmappings_other.cmx
The archive netstring.cmx?a contains the functionality, and the two
single-module files netmappings_iso.cm[ox] and netmappings_other.cm[ox] add
configurations to the character set conversion module. These configurations are
optional:
- Netmappings_iso: Conversion tables for the character sets ISO-8859-2, -3,
-4, -5, -6, -7, -8, -9, -10, 13, -14, and -15.
- Netmappings_other: Conversion tables for the character sets WINDOWS-1250,
-1251, -1252, -1253, -1254, -1255, -1256, -1257, -1258; code pages 037, 424,
437, 500, 737, 775, 850, 852, 855, 856, 857, 860, 861, 862, 863, 864, 865,
866, 869, 874, 875, 1006, 1026; JIS-0201; KOI8R; Macintosh Roman encoding;
Adobe Standard Encoding, Symbol Encoding, and Zapf Dingbats Encodings.
Even without these configuration files, the conversion module is able to handle
the encodings ISO-8859-1, US-ASCII, UTF-16, UTF-8, and the Java variant of
UTF-8.
The module Netstring_mt must be linked into multi-threaded applications;
otherwise some mutexes remain uninitialized.
The module Netstring_top loads several printers for abstract values (for
toploops).
------------------------------------------------------------------------------
Installation
------------------------------------------------------------------------------
The Makefile defines the following goals:
- make install
installs the bytecode archive, the interface definitions, and if present,
the native archive in the default location of findlib
- make install-cgi
Installs a pseudo package "cgi" which is compatible with the old cgi
package. This has the effect that software searching the "cgi" package will
find the netstring package instead. This is recommended.
- make install-base64
Installs a pseudo package "base64" which is compatible with the old base64
package. This has the effect that software searching the "base64" package
will find the netstring package instead. This is recommended.
- make uninstall
removes the package
- make uninstall-cgi
removes the "cgi" compatibility package
- make uninstall-base64
removes the "base64" compatibility package
------------------------------------------------------------------------------
Linking netstring with findlib
------------------------------------------------------------------------------
The command
ocamlfind ocamlc ... -package netstring ... -linkpkg ...
links as much as possible code from netstring into your application: All
conversion tables; when -thread is specified, the initialization code for
multi-threaded programs; when a toploop is created, the code setting the value
printers.
The following predicates reduce the amount of linked code:
- netstring_only_iso: Only the conversion tables for the ISO-8859 series of
character sets are linked.
- netstring_minimum: No additional conversion tables are linked; only
ISO-8859-1 and the UTF encodings work.
For example, the command may look like
ocamlfind ocamlc ...
-package netstring -predicates netstring_only_iso ... -linkpkg ...
to link only the ISO-8859 conversion tables.
--------------------------
[1] see http://www.ocaml-programming.de/packages/documentation/findlib/
[2] Findlib is a package manager, see the file ABOUT-FINDLIB.
|