David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 1 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 2 | SPECIAL NOTE FOR UNIX USERS |
| 3 | =========================== |
| 4 | |
| 5 | If you are installing this release of FreeType on a system that |
| 6 | already uses release 2.0.5 (or even an older version), you have to |
| 7 | perform a few special steps to ensure that everything goes well. |
| 8 | |
| 9 | |
David Turner | 944b729 | 2002-01-31 17:42:05 +0000 | [diff] [blame] | 10 | |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 11 | I. Enable the TrueType bytecode hinter if you need it |
| 12 | ----------------------------------------------------- |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 13 | |
| 14 | The TrueType bytecode interpreter is disabled in all public |
| 15 | releases of the FreeType packages for patents reasons (see |
| 16 | http://www.freetype.org/patents.html for more details). |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 17 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 18 | However, many Linux distributions do enable the interpreter in the |
| 19 | FreeType packages (DEB/RPM/etc.) they produce for their platforms. |
| 20 | If you are using TrueType fonts on your system, you most probably |
| 21 | want to enable it manually by doing the following: |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 22 | |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 23 | - open the file "include/freetype/config/ftoption.h" |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 24 | |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 25 | - locate a line that says: |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 26 | |
Werner Lemberg | 12a8741 | 2002-01-29 01:11:23 +0000 | [diff] [blame] | 27 | #undef TT_CONFIG_OPTION_BYTECODE_INTERPRETER |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 28 | |
| 29 | - change it to: |
| 30 | |
| 31 | #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER |
| 32 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 33 | of course, this must be done _before_ compiling the library |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 34 | |
| 35 | |
David Turner | 944b729 | 2002-01-31 17:42:05 +0000 | [diff] [blame] | 36 | |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 37 | II. Determine the correct installation path |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 38 | -------------------------------------------- |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 39 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 40 | By default, the source package will install the library in |
| 41 | "/usr/local". However, many Unix distributions now install the |
| 42 | library in "/usr", since FreeType is becoming a critical system |
| 43 | component. |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 44 | |
| 45 | If FreeType is already installed on your system, type |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 46 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 47 | freetype-config --prefix |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 48 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 49 | on the command line. This should return the installation path to |
| 50 | use below (e.g. "/usr" or "/usr/local"). Otherwise, simply use |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 51 | "/usr" (or what you think is adequate for your installation). |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 52 | |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 53 | |
| 54 | |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 55 | III. Ensure that you are using GNU Make |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 56 | --------------------------------------- |
| 57 | |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 58 | The FreeType build system _exclusively_ works with GNU Make. You |
| 59 | will not be able to compile the library with the instructions |
| 60 | below using any other alternative (including BSD Make). |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 61 | |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 62 | Trying to compile the library with a different Make tool will |
| 63 | print a message like: |
| 64 | |
| 65 | Sorry, GNU make is required to build FreeType2. |
| 66 | |
| 67 | and the build process will be aborted. If this happens, install |
| 68 | GNU Make on your system, and use the GNUMAKE environment variable |
| 69 | to name it. |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 70 | |
| 71 | |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 72 | |
| 73 | IV. Build and install the library |
| 74 | --------------------------------- |
| 75 | |
| 76 | The following should work on all Unix systems where the `make' |
| 77 | command invokes GNU Make: |
| 78 | |
David Turner | ce9a044 | 2002-01-08 18:33:55 +0000 | [diff] [blame] | 79 | ./configure --prefix=<yourprefix> |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 80 | make |
David Turner | 944b729 | 2002-01-31 17:42:05 +0000 | [diff] [blame] | 81 | make install (as root) |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 82 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 83 | where "<yourprefix>" must be replaced by the prefix returned by |
| 84 | the "freetype-config" command. |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 85 | |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 86 | When using a different command to invoke GNU Make, use the GNUMAKE |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 87 | variable. For example, if `gmake' is the command to use on your |
| 88 | system, do something like: |
| 89 | |
| 90 | GNUMAKE=gmake ./configure --prefix=<yourprefix> |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 91 | gmake |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 92 | gmake install (as root) |
| 93 | |
| 94 | If this still doesn't work, read the detailed compilation |
| 95 | procedure available in the file "docs/BUILD" for troubleshooting. |
David Turner | 944b729 | 2002-01-31 17:42:05 +0000 | [diff] [blame] | 96 | |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 97 | |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 98 | V. Take care of XFree86 version 4 |
| 99 | --------------------------------- |
David Turner | d15bc0d | 2002-04-12 09:31:48 +0000 | [diff] [blame] | 100 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 101 | Certain recent Linux distributions will install _several_ versions |
| 102 | of FreeType on your system. For example, on a fresh Mandrake 8.1 |
| 103 | system, you can find the following files: |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 104 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 105 | /usr/lib/libfreetype.so which links to |
| 106 | /usr/lib/libfreetype.6.1.0.so |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 107 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 108 | and |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 109 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 110 | /usr/X11R6/lib/libfreetype.so which links to |
| 111 | /usr/X11R6/lib/libfreetype.6.0.so |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 112 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 113 | Note that these files correspond to two distinct versions of the |
| 114 | library! It seems that this surprising issue is due to the |
| 115 | install scripts of recent XFree86 servers (from 4.1.0) which |
| 116 | irremediably install their own (dated) version of the library in |
| 117 | "/usr/X11R6/lib". |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 118 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 119 | In certain _rare_ cases you may experience minor problems if you |
| 120 | install this release of the library in "/usr" only, namely, that |
| 121 | certain applications will not benefit from the bug fixes and |
| 122 | rendering improvements you'd expect. |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 123 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 124 | There are two good ways to deal with this situation: |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 125 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 126 | - Install the library _twice_, in "/usr" and in "/usr/X11R6" |
| 127 | (you have to do that each time you install a new FreeType |
| 128 | release though). |
Werner Lemberg | 94ffae5 | 2002-04-14 00:54:32 +0000 | [diff] [blame] | 129 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 130 | - Change the link in /usr/X11R6/lib/libfreetype.so to point to |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 131 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 132 | /usr/lib/libfreetype.so, |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 133 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 134 | and get rid of |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 135 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 136 | /usr/X11R6/lib/libfreetype.6.0.so |
David Turner | b1748d4 | 2002-01-04 16:36:42 +0000 | [diff] [blame] | 137 | |
Werner Lemberg | ac81295 | 2002-01-06 16:42:44 +0000 | [diff] [blame] | 138 | The FreeType Team is not responsible for this problem, so please |
| 139 | contact either the XFree86 development team or your Linux |
| 140 | distributor to help clear this issue in case the information given |
| 141 | here doesn't help. |