#### Beyond Linux® From Scratch (systemd Edition) - Version 11.1

### Chapter 10. Graphics and Font Libraries

- Prev

  FreeType-2.11.1

- Next

  FriBidi-1.0.11

- Up
- Home

# Fontconfig-2.13.1

## Introduction to Fontconfig

The Fontconfig package contains a library and support programs used for configuring and customizing font access.

This package is known to build and work properly using an LFS-11.1 platform.

### Package Information

- Download (HTTP): https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.13.1.tar.bz2

- Download MD5 sum: 36cdea1058ef13cbbfdabe6cb019dc1c

- Download size: 1.6 MB

- Estimated disk space required: 16 MB (with tests)

- Estimated build time: 0.3 SBU (with tests)

### Fontconfig Dependencies

#### Required

FreeType-2.11.1

#### Optional

JSON-C-0.15, DocBook-utils-0.6.14 and libxml2-2.9.13, texlive-20210325 (or install-tl-unx)

### Note

If you have DocBook Utils installed and you remove the `--disable-docs` parameter from the configure command below, you must have SGMLSpm-1.1 and texlive-20210325 installed also, or the Fontconfig build will fail.

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/Fontconfig

## Installation of Fontconfig

Install Fontconfig by running the following commands:

    ./configure --prefix=/usr        \
                --sysconfdir=/etc    \
                --localstatedir=/var \
                --disable-docs       \
                --docdir=/usr/share/doc/fontconfig-2.13.1 &&
    make

To test the results, issue: make check.

Now, as the `root` user:

    make install

If you did not remove the `--disable-docs` parameter from the configure command, you can install the pre-generated documentation by using the following commands as the `root` user:

    install -v -dm755 \
            /usr/share/{man/man{1,3,5},doc/fontconfig-2.13.1/fontconfig-devel} &&
    install -v -m644 fc-*/*.1         /usr/share/man/man1 &&
    install -v -m644 doc/*.3          /usr/share/man/man3 &&
    install -v -m644 doc/fonts-conf.5 /usr/share/man/man5 &&
    install -v -m644 doc/fontconfig-devel/* \
                                      /usr/share/doc/fontconfig-2.13.1/fontconfig-devel &&
    install -v -m644 doc/*.{pdf,sgml,txt,html} \
                                      /usr/share/doc/fontconfig-2.13.1

## Command Explanations

`--disable-docs`: This switch avoids building the documentation (the release tarball includes pre-generated documentation).

## Configuring Fontconfig

###

#### Config Files

`/etc/fonts/*, /etc/fonts/conf.d/* and /usr/share/fontconfig/conf.avail/*`

###

#### Configuration Information

The main configuration file for Fontconfig is `/etc/fonts/fonts.conf`. Generally you do not want to edit this file. It will also read `/etc/fonts/local.conf` and any files in `/etc/fonts/conf.d`. To put a new font directory in the configuration, create (or update) the `/etc/fonts/local.conf` file with your local information or add a new file in `/etc/fonts/conf.d`. The default location of fonts in Fontconfig is:

- /usr/share/fonts

- ~/.local/share/fonts

- ~/.fonts (this is now deprecated, but for the moment it still works)

Fontconfig also ships many example configuration files in the `/usr/share/fontconfig/conf.avail` directory. Symlinking specific files to `/etc/fonts/conf.d` will enable them. The default setup is generally good enough for most users. See `/etc/fonts/conf.d/README` for a description of the configuration files.

More information about configuring Fontconfig can be found in the user's manual in file:///usr/share/doc/fontconfig-2.13.1/fontconfig-user.html.

## Contents

Installed Programs: fc-cache, fc-cat, fc-conflist, fc-list, fc-match, fc-pattern, fc-query, fc-scan, and fc-validate
Installed Library: libfontconfig.so
Installed Directories: /etc/fonts, /usr/include/fontconfig, /usr/share/doc/fontconfig-2.13.1, /usr/share/fontconfig, /usr/share/xml/fontconfig, and /var/cache/fontconfig

### Short Descriptions

fc-cache | is used to create font information caches
fc-cat | is used to read font information caches
fc-conflist | shows the ruleset files' information on the system
fc-list | is used to create font lists
fc-match | is used to match available fonts, or find fonts that match a given pattern
fc-pattern | is used to parse pattern (empty pattern by default) and show the parsed result
fc-query | is used to query fonts files and print resulting patterns
fc-scan | is used to scan font files and directories, and print resulting patterns
fc-validate | is used to validate font files
`libfontconfig.so` | contains functions used by the Fontconfig programs and also by other programs to configure or customize font access

Last updated on

- Prev

  FreeType-2.11.1

- Next

  FriBidi-1.0.11

- Up
- Home