David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 1 | This document contains instructions on how to build the FreeType library |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 2 | on Unix systems. This also works for emulations like Cygwin or MSys on |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 3 | Win32: |
| 4 | |
| 5 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 6 | 1. Ensure that you are using GNU Make |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 7 | ------------------------------------- |
| 8 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 9 | The FreeType build system _exclusively_ works with GNU Make. You |
| 10 | will not be able to compile the library with the instructions below |
| 11 | using any other alternative (including BSD Make). |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 12 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 13 | [Well, this is not really correct. Recently, a perl implementation |
| 14 | of make called `makepp' has appeared which can also build FreeType 2 |
| 15 | successfully on Unix platforms. See http://makepp.sourceforge.net |
Werner Lemberg | 26eccb4 | 2004-04-13 08:35:05 +0000 | [diff] [blame^] | 16 | for more details; you need version 1.19 or newer, and you must pass |
| 17 | option `--norc-substitution'.] |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 18 | |
| 19 | Trying to compile the library with a different Make tool will print |
| 20 | a message like: |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 21 | |
| 22 | Sorry, GNU make is required to build FreeType2. |
| 23 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 24 | and the build process will be aborted. If this happens, install GNU |
| 25 | Make on your system, and use the GNUMAKE environment variable to |
| 26 | name it. |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 27 | |
| 28 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 29 | 2. Build and install the library |
| 30 | -------------------------------- |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 31 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 32 | The following should work on all Unix systems where the `make' |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 33 | command invokes GNU Make: |
| 34 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 35 | ./configure [options] |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 36 | make |
| 37 | make install (as root) |
| 38 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 39 | The default installation path is "/usr/local". It can be changed |
| 40 | with the `--prefix=<path>' option. Example: |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 41 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 42 | ./configure --prefix=/usr |
| 43 | |
| 44 | When using a different command to invoke GNU Make, use the GNUMAKE |
| 45 | variable. For example, if `gmake' is the command to use on your |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 46 | system, do something like: |
| 47 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 48 | GNUMAKE=gmake ./configure [options] |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 49 | gmake |
| 50 | gmake install (as root) |
| 51 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 52 | If this still doesn't work, something's rotten on your system |
| 53 | (e.g. you are using a very old version of GNU Make). |
| 54 | |
| 55 | It is possible to compile FreeType in a different directory. |
| 56 | Assuming the FreeType source files in directory `/src/freetype' a |
| 57 | compilation in directory `foo' works as follows: |
| 58 | |
| 59 | cd foo |
| 60 | /src/freetype/configure [options] |
| 61 | make |
| 62 | make install |
David Turner | 66cbc20 | 2003-03-20 07:04:40 +0000 | [diff] [blame] | 63 | |
| 64 | |
Werner Lemberg | a16c4a7 | 2003-04-21 13:30:27 +0000 | [diff] [blame] | 65 | --- end of INSTALL.UNX -- |