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