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