Fix help string for --enable-gui.
[m17n/m17n-lib.git] / README
1 This directory tree holds version 1.6.1 of the m17n library.    -*- text -*-
2
3 Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4   National Institute of Advanced Industrial Science and Technology (AIST)
5   Registration Number H15PRO112
6 See the end for copying conditions.
7
8 The m17n library is a multilingual text processing library for the C
9 language.
10
11
12 (1) INSTALLATION
13
14 (1-1) From CVS working directory.
15
16 Run the script "bootstrap.sh" in this directory.  It is tested that
17 the script runs successfully with these versions of tools.
18
19                 libtool automake autoconf pkg-config
20   Debian Lenny   1.5.26   1.10.1     2.61       0.22
21   Ubunto 9.10     2.2.4    1.9.6     2.61       0.22
22   Fedra 12       2.2.6b   1.11.1     2.63       0.23
23
24 Then, proceed to the next step.
25
26 (1-2) From the tarball.
27
28 The m17n library utilizes these extra libraries.  It is recommended to
29 install all of them before running the "configure" script.  The script
30 will find out the existence of them automatically.
31
32         libxml2         -- http://xmlsoft.org/
33         fribidi         -- http://fribidi.sourceforge.net/
34         freetype        -- http://www.freetype.org/
35         libotf          -- http://www.m17n.org/libotf/
36         fontconfig      -- http://freedesktop.org/Software/fontconfig
37         xft             -- http://freedesktop.org/Software/Xft
38         gd              -- http://www.boutell.com/gd/
39
40 In addition, for finding a word boundary in Thai text, "configure"
41 checks the existence of these libraries (libthai is preferred):
42
43         libthai         -- http://sourceforge.net/projects/libthai
44         wordcut         -- http://thaiwordseg.sourceforge.net/
45
46 The sample program m17n-edit utilizes this Japanese inputting system.
47 It is also recommended to install it.
48
49         anthy           -- http://anthy.sourceforge.jp/
50
51 Then, type the followings on the command line.
52
53         % ./configure
54         % make
55         % make install
56
57 Note that this package assumes an ANSI C compiler such as gcc.  It
58 will not compile with an old-style K&R compiler.
59
60 The default installation path is "/usr/local".
61 Thus, these header files are installed in /usr/local/include:
62         m17n-core.h, m17n.h, m17n-gui.h, m17n-err.h, m17n-X.h, m17n-flt.h
63
64 These library files are installed in /usr/local/lib:
65         libm17n-core.{a,so*,la}
66         libm17n.{a,so*,la}
67         libm17n-gui.{a,so*,la}
68         libm17n-flt.{a,so*,la}
69
70 These modules are installed in /usr/local/lib/m17n/1.0:
71         libm17n-X.{a,so*,la}
72         libm17n-gd.{a,so*,la}
73         libimx-anthy.{a,so*,la},
74         libimx-ispell.{a,so*,la},
75
76 This shell script is installed in /usr/local/bin:
77         m17n-config
78
79 These pkgconfig metadata files are installed in
80 /usr/local/lib/pkgconfig:
81         m17n-core.pc, m17n-shell.pc, m17n-flt.pc, m17n-gui.pc
82
83 These sample programs are installed in /usr/local/bin too:
84         m17n-conv, m17n-date, m17n-view, m17n-dump, m17n-edit
85
86 If you don't need GUI libraries (libm17n-gui.so and etc.), you can
87 instruct the `configure' script not to build them as below:
88
89         % ./configure --without-gui
90
91 This file under `example' sub-directory is a Japanese resource file
92 for m17n-edit.  It is not installed but useful in Japanese locale.  Copy
93 it to your home directory (or, for instance,
94 /usr/X11R6/lib/X11/ja/app-defaults) and rename it to "M17NEdit" if you
95 want to see labels in Japanese:
96         M17NEdit.ja
97
98 These text files under `example' sub-directory are not installed but
99 useful for testing the rendering engine of the m17n library:
100         HELLO.utf8 HELLO.xml HELLO-ja.utf8 HELLO-ja.xml HELLO.html
101 XXX.xml are generated from XXX.utf8 by attaching text property
102 `language' and serializing.
103
104 Please read also INSTALL for the generic installation instructions.
105
106
107 (2) DATABASE
108
109 The m17n library utilizes the m17n database available at:
110         http://www.m17n.org/m17n-lib/m17n-db
111 Without this database, the m17n library loses half its value.  Please
112 install it (Ver.1.4.0 or the later is required) too before you try the
113 above sample programs or develop a program that uses the m17n library.
114
115
116 (3) DOCUMENTATION
117
118 This page has a link to full documentation of the m17n library:
119         http://www.m17n.org/m17n-lib
120
121 Actually, the documentation was generated by Doxygen using comments in
122 the source files.  There are English and Japanese comments in
123 parallel.
124
125
126 (4) USAGE
127
128 The library provides three levels of APIs, CORE, SHELL, and GUI.  For
129 CORE API, include <m17n-core.h>, for SHELL API, include <m17n.h>, and
130 for GUI API, include <m17n-gui.h >.  In addition, for those who need
131 only text shaping facility that uses FLT (Font Layout Table), the
132 library provides FLT API.  To use it, include <m17n-flt.h>.
133
134 See the documentation above, or the manual of m17nIntro(3) for more
135 detail.
136
137 The shell script "m17n-config" helps compiling and linking of a
138 program that uses the m17n library.  For instance this compiles PROG.c
139 that uses SHELL API and builds executable PROG.
140
141         % gcc -o PROG `m17n-config --cflags` `m17n-config --libs` PROG.c
142
143 This compiles PROX.c that uses GUI API and builds executable PROX.
144
145         % gcc -o PROX `m17n-config GUI --cflags` `m17n-config GUI --libs` PROX.c
146
147
148 ----------------------------------------------------------------------
149 Copyright information
150
151 Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
152   National Institute of Advanced Industrial Science and Technology (AIST)
153   Registration Number H15PRO112
154
155 This file is part of the m17n library.
156
157 The m17n library is free software; you can redistribute it and/or
158 modify it under the terms of the GNU Lesser General Public License
159 as published by the Free Software Foundation; either version 2.1 of
160 the License, or (at your option) any later version.
161
162 The m17n library is distributed in the hope that it will be useful,
163 but WITHOUT ANY WARRANTY; without even the implied warranty of
164 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
165 Lesser General Public License for more details.
166
167 You should have received a copy of the GNU Lesser General Public
168 License along with the m17n library; if not, write to the Free
169 Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
170 Boston, MA 02110-1301, USA.