1 2There are several ways to build the FreeType library, depending on 3your system and the level of customization you need. Here is a short 4overview of the documentation available: 5 6 7I. Prerequisites and dependencies 8================================= 9 10 FreeType is a low level C library that only depends on the standard 11 C library with very few platform-dependent optimizations utilized at 12 build time. Any C99-compliant compiler should be able to compile 13 FreeType. System libraries, such as zlib, Gzip, bzip2, Brotli, 14 and libpng, might be used to handle compressed fonts or decode 15 embedded PNG glyphs. 16 17 FreeType auto-configuration scripts should be able to detect the 18 prerequisites if the necessary headers are available at the default 19 locations. Otherwise, modify `include/freetype/config/ftoption.h` 20 to control how the FreeType library gets built. Normally, you don't 21 need to change anything. 22 23 Applications have very limited control over FreeType's behaviour at 24 run-time; look at the documentation of function `FT_Property_Set`. 25 26 27II. Normal installation and upgrades 28==================================== 29 30 1. Unix and Unix-like systems 31 32 This also includes MacOS, Cygwin, MinGW + MSYS, Mingw-w64 + MSYS2, 33 and possibly other, similar environments. 34 35 Please read `INSTALL.UNIX` to install or upgrade FreeType 2 on a 36 Unix system. Note that you *need* GNU Make for automatic 37 compilation, since other make tools won't work (this includes BSD 38 Make). 39 40 GNU Make VERSION 3.81 OR NEWER IS NEEDED! 41 42 43 2. Other systems using GNU Make 44 45 On some non-Unix platforms, it is possible to build the library 46 using only the GNU Make utility. Note that *NO OTHER MAKE TOOL 47 WILL WORK*[1]! This methods supports several compilers on 48 Windows, OS/2, and BeOS, including MinGW* (without MSYS*), Visual 49 C++, Borland C++, and more. 50 51 Instructions are provided in the file `INSTALL.GNU`. 52 53 54 3. Other build tools and platforms. 55 56 A few other tools can be used to build FreeType. You can find 57 the corresponding instruction files in the FreeType root folder 58 or the builds/ sub-folder. 59 60 CMake :: see `CMakeLists.txt` for more information 61 Meson :: see `meson.build` for more information 62 MSBuild :: see `builds/windows/vc2010/freetype.vcxproj` 63 MMS :: see `vms_make.com` and `docs/INSTALL.VMS` 64 65 66 4. With an IDE Project File (e.g., for Visual Studio or CodeWarrior) 67 68 We provide a small number of 'project files' for various IDEs to 69 automatically build the library as well. Note that these files 70 are not actively supported by FreeType developers, they can break 71 or become obsolete. 72 73 To find them, have a look at the content of the `builds/<system>` 74 directory, where <system> stands for your OS or environment. 75 76 77 5. From you own IDE, or own Makefiles 78 79 If you want to create your own project file, follow the 80 instructions given in the `INSTALL.ANY` document of this 81 directory. 82 83 84III. Custom builds of the library 85================================= 86 87 Customizing the compilation of FreeType is easy, and allows you to 88 select only the components of the font engine that you really need. 89 For more details read the file `CUSTOMIZE`. 90 91 92---------------------------------------------------------------------- 93 94[1] make++, a make tool written in Perl, has sufficient support of GNU 95 make extensions to build FreeType. See 96 97 https://makepp.sourceforge.net 98 99 for more information; you need version 2.0 or newer, and you must 100 pass option `--norc-substitution`. 101 102---------------------------------------------------------------------- 103 104Copyright (C) 2000-2022 by 105David Turner, Robert Wilhelm, and Werner Lemberg. 106 107This file is part of the FreeType project, and may only be used, 108modified, and distributed under the terms of the FreeType project 109license, LICENSE.TXT. By continuing to use, modify, or distribute 110this file you indicate that you have read the license and understand 111and accept it fully. 112 113 114--- end of INSTALL --- 115