Introduction to Fontconfig

The Fontconfig package is a library for configuring and customizing font access.

Package Information

Fontconfig Dependencies


FreeType-2.3.7 and either expat-2.0.1 or libxml2-2.6.31 (requires pkg-config-0.22)





If you have DocBook-utils installed and you remove the --disable-docs parameter from the configure command below, you must have SGMLSpm-1.03ii and JadeTeX-3.13 installed also, or the Fontconfig build will fail.

User Notes:

Installation of Fontconfig

Install Fontconfig by running the following commands:

./configure --prefix=/usr \
    --sysconfdir=/etc --localstatedir=/var \
    --disable-docs --without-add-fonts \
    --with-docdir=/usr/share/doc/fontconfig-2.4.2 &&

To test the results, issue: make check.

Now, as the root user:

make install &&
install -v -m644 doc/*.3 /usr/share/man/man3 &&
install -v -m644 doc/*.5 /usr/share/man/man5 &&
install -v -m755 \
        -d /usr/share/doc/fontconfig-2.4.2/fontconfig-devel &&
install -v -m644 doc/*.{html,pdf,txt} \
        /usr/share/doc/fontconfig-2.4.2 &&
install -v -m644 doc/fontconfig-devel/* \

Command Explanations

--localstatedir=/var: This switch places the system font cache files in /var/cache/fontconfig.

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

--without-add-fonts: This switch disables the automatic search for X Window System fonts which, if found, may confuse some applications.

--with-docdir=/usr/share/doc/fontconfig-2.4.2: Though this parameter seems counter-intuitive following the preceding parameter to the configure command, it is used so that if the builder removes the --disable-docs parameter, the documentation will be installed in a versioned directory name instead of the default /usr/share/doc/fontconfig.

Configuring Fontconfig

Config Files

/etc/fonts/*, /etc/fonts/conf.avail/*, and /etc/fonts/conf.d/*

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

  • ~/.fonts

Fontconfig also ships many example configuration files in the /etc/fonts/conf.avail directory. Symlinking to specific files from /etc/fonts/conf.d will enable them. The default setup is generally good enough for most users. See /etc/fonts/conf.avail/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.4.2/fontconfig-user.html.


Installed Programs: fc-cache, fc-cat, fc-list, and fc-match
Installed Library: libfontconfig.{so,a}
Installed Directories: /etc/fonts, /usr/include/fontconfig, /usr/share/doc/fontconfig-2.4.2 and /var/cache/fontconfig

Short Descriptions


is used to create font information caches.


is used to read font information caches.


is used to create font lists.


is used to match available fonts, or find fonts that match a given pattern.


contains functions used by the Fontconfig programs and also by other programs to configure or customize font access.

Last updated on 2008-05-06 00:26:07 -0500