blob: d89010af98cf4e2b33b2edc725016ed1ff61d87d [file] [log] [blame]
Werner Lemberg098ab262000-11-02 07:53:08 +00001In order to build the library, read the `BUILD' document in the `docs'
Werner Lemberg5a2fdc02000-12-14 22:57:17 +00002directory. This is only a quick starter.
David Turnerc3c7e7f2000-03-13 14:19:31 +00003
Werner Lemberge4b32a52000-10-31 20:42:18 +00004
Werner Lemberg5a2fdc02000-12-14 22:57:17 +00005I. From the command line
6------------------------
7
Werner Lemberg9a8b5362001-03-12 22:33:52 +00008 You need to have GNU Make (version 3.78.1 or newer) installed on
9 your system to compile the library from the command line. This will
Werner Lemberg7124a8e2001-03-07 21:20:48 +000010 _not_ work with other make tools (including BSD make)!
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000011
12 [Well, this is not really correct. Recently, a perl implementation
13 of make called `makepp' has appeared which can also build FreeType 2
14 successfully on Unix platforms. See http://LNC.usc.edu/~holt/makepp
15 for more details.]
David Turnerb1aabf42000-11-30 23:48:22 +000016
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000017 - Go to the `freetype2' directory.
David Turnerb1aabf42000-11-30 23:48:22 +000018
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000019 - Unix (any C compiler should work):
David Turnerb1aabf42000-11-30 23:48:22 +000020
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000021 - make setup (don't worry, this will invoke a configure script)
22 - make
23 - make install
David Turner5ef3c952000-08-22 23:15:23 +000024
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000025 Alternatively, you can pass parameters to the configure script
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000026 within the CFG variable, as in:
David Turner896b6042000-10-03 17:51:29 +000027
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000028 - make setup CFG="--prefix=/usr"
29 - make
30 - make install
David Turner5f5b4462000-07-26 19:13:51 +000031
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000032 - Windows:
David Turner5f5b4462000-07-26 19:13:51 +000033
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000034 We provide a version of GNU Make for Win32 on the FreeType site.
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000035 See http://www.freetype.org/download.html for details.
Werner Lemberge4b32a52000-10-31 20:42:18 +000036
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000037 - gcc (Mingw, _not_ CygWin):
David Turner859a18a2000-12-14 18:50:40 +000038
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000039 - make setup
40 - make
David Turner5f5b4462000-07-26 19:13:51 +000041
David Turner5f5b4462000-07-26 19:13:51 +000042
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000043 - Visual C++:
David Turnerb1aabf42000-11-30 23:48:22 +000044
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000045 - make setup visualc
46 - make
David Turner859a18a2000-12-14 18:50:40 +000047
48
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000049 - other compilers:
David Turnerb1aabf42000-11-30 23:48:22 +000050
David Turner859a18a2000-12-14 18:50:40 +000051 - make setup xxxx
52 - make
53
David Turner859a18a2000-12-14 18:50:40 +000054 where "xxxx" is a special target corresponding to your compiler.
55 To see a list of supported compilers in this release, type:
56
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000057 make setup list
David Turner859a18a2000-12-14 18:50:40 +000058
Werner Lemberge4b32a52000-10-31 20:42:18 +000059
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000060II. In your own environment (IDE)
61---------------------------------
Werner Lemberge4b32a52000-10-31 20:42:18 +000062
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000063 You need to add the directories "freetype2/include" and
64 "freetype2/src" to your include path when compiling the library.
David Turnerb1aabf42000-11-30 23:48:22 +000065
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000066 Compile each library component through the following files:
David Turnerb1aabf42000-11-30 23:48:22 +000067
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000068 -- base components (required)
David Turnerb1aabf42000-11-30 23:48:22 +000069
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000070 src/base/ftsystem.c
71 src/base/ftinit.c
72 src/base/ftdebug.c
73 src/base/ftbase.c
74 src/base/ftglyph.c
75 src/base/ftbbox.c
76 src/base/ftmm.c
David Turnerb1aabf42000-11-30 23:48:22 +000077
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000078 src/base/ftmac.c -- only on the Macintosh
David Turnerb1aabf42000-11-30 23:48:22 +000079
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000080 -- other components are optional
David Turnerb1aabf42000-11-30 23:48:22 +000081
Werner Lemberg5a2fdc02000-12-14 22:57:17 +000082 src/autohint/autohint.c -- auto hinting module
83 src/cache/ftcache.c -- cache sub-system (in beta)
84 src/sfnt/sfnt.c -- SFNT files support (TrueType & OpenType)
85 src/cff/cff.c -- CFF/OpenType font driver
86 src/psnames/psnames.c -- Postscript glyph names support
87 src/psaux/psaux.c -- Postscript Type 1 parsing
88 src/truetype/truetype.c -- TrueType font driver
89 src/type1/type1.c -- Type 1 font driver
90 src/cid/type1cid.c -- Type 1 CID-keyed font driver
91 src/winfonts/winfonts.c -- Windows FONT / FNT font driver
David Turnerb1aabf42000-11-30 23:48:22 +000092
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000093 Note:
David Turnerb1aabf42000-11-30 23:48:22 +000094
Werner Lemberg4c80f0c2000-12-01 17:25:58 +000095 `truetype.c' needs `sfnt.c' and `psnames.c'
96 `type1.c' needs `psaux.c' and `psnames.c'
97 `type1cid.c' needs `psaux.c' and `psnames.c'
98 `cff.c' needs `sfnt.c', `psaux.c', and `psnames.c'
Werner Lemberge4b32a52000-10-31 20:42:18 +000099
Werner Lemberg4c80f0c2000-12-01 17:25:58 +0000100 etc.
101
102
103--- end of INSTALL --