*** empty log message ***
[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
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-flt.{a,so*,la}
68
69 These modules are installed in /usr/local/lib/m17n/1.0:
70         libm17n-X.{a,so*,la}
71         libm17n-gd.{a,so*,la}
72         libimx-anthy.{a,so*,la},
73         libimx-ispell.{a,so*,la},
74
75 This shell script is installed in /usr/local/bin:
76         m17n-config
77
78 These pkgconfig metadata files are installed in
79 /usr/local/lib/pkgconfig:
80         m17n-core.pc, m17n-shell.pc, m17n-flt.pc, m17n-gui.pc
81
82 These sample programs are installed in /usr/local/bin too:
83         m17n-conv, m17n-date, m17n-view, m17n-dump, m17n-edit
84
85 If you don't need GUI libraries (libm17n-gui.so and etc.), you can
86 instruct the `configure' script not to build them as below:
87
88         % ./configure --without-gui
89
90 This file under `example' sub-directory is a Japanese resource file
91 for m17n-edit.  It is not installed but useful in Japanese locale.  Copy
92 it to your home directory (or, for instance,
93 /usr/X11R6/lib/X11/ja/app-defaults) and rename it to "M17NEdit" if you
94 want to see labels in Japanese:
95         M17NEdit.ja
96
97 These text files under `example' sub-directory are not installed but
98 useful for testing the rendering engine of the m17n library:
99         HELLO.utf8 HELLO.xml HELLO-ja.utf8 HELLO-ja.xml HELLO.html
100 XXX.xml are generated from XXX.utf8 by attaching text property
101 `language' and serializing.
102
103 Please read also INSTALL for the generic installation instructions.
104
105
106 (2) DATABASE
107
108 The m17n library utilizes the m17n database available at:
109         http://www.m17n.org/m17n-lib/m17n-db
110 Without this database, the m17n library loses half its value.  Please
111 install it (Ver.1.4.0 or the later is required) too before you try the
112 above sample programs or develop a program that uses the m17n library.
113
114
115 (3) DOCUMENTATION
116
117 This page has a link to full documentation of the m17n library:
118         http://www.m17n.org/m17n-lib
119
120 Actually, the documentation was generated by Doxygen using comments in
121 the source files.  There are English and Japanese comments in
122 parallel.
123
124
125 (4) USAGE
126
127 The library provides three levels of APIs, CORE, SHELL, and GUI.  For
128 CORE API, include <m17n-core.h>, for SHELL API, include <m17n.h>, and
129 for GUI API, include <m17n-gui.h >.  In addition, for those who need
130 only text shaping facility that uses FLT (Font Layout Table), the
131 library provides FLT API.  To use it, include <m17n-flt.h>.
132
133 See the documentation above, or the manual of m17nIntro(3) for more
134 detail.
135
136 The shell script "m17n-config" helps compiling and linking of a
137 program that uses the m17n library.  For instance this compiles PROG.c
138 that uses SHELL API and builds executable PROG.
139
140         % gcc -o PROG `m17n-config --cflags` `m17n-config --libs` PROG.c
141
142 This compiles PROX.c that uses GUI API and builds executable PROX.
143
144         % gcc -o PROX `m17n-config GUI --cflags` `m17n-config GUI --libs` PROX.c
145
146
147 ----------------------------------------------------------------------
148 Copyright information
149
150 Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
151   National Institute of Advanced Industrial Science and Technology (AIST)
152   Registration Number H15PRO112
153
154 This file is part of the m17n library.
155
156 The m17n library is free software; you can redistribute it and/or
157 modify it under the terms of the GNU Lesser General Public License
158 as published by the Free Software Foundation; either version 2.1 of
159 the License, or (at your option) any later version.
160
161 The m17n library is distributed in the hope that it will be useful,
162 but WITHOUT ANY WARRANTY; without even the implied warranty of
163 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
164 Lesser General Public License for more details.
165
166 You should have received a copy of the GNU Lesser General Public
167 License along with the m17n library; if not, write to the Free
168 Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
169 Boston, MA 02110-1301, USA.