#### Beyond Linux® From Scratch (System V Edition) - Version 12.3

### Chapter 41. Other X-based Programs

- Prev

  feh-3.10.3

- Next

  FreeRDP-3.12.0

- Up
- Home

# FontForge-20230101

## Introduction to FontForge

The FontForge package contains an outline font editor that lets you create your own postscript, truetype, opentype, cid-keyed, multi-master, cff, svg and bitmap (bdf, FON, NFNT) fonts, or edit existing ones.

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

### Package Information

- Download (HTTP): https://github.com/fontforge/fontforge/releases/download/20230101/fontforge-20230101.tar.xz

- Download MD5 sum: 7043f25368ed25bcd75d168564919fb7

- Download size: 13 MB

- Estimated disk space required: 102 MB (add 52 MB for the tests)

- Estimated build time: 0.4 SBU (with parallelism=4, add 0.1 SBU for the tests)

### Additional Downloads

- Required patch: https://www.linuxfromscratch.org/patches/blfs/12.3/fontforge-20230101-security_fixes-1.patch

### FontForge Dependencies

#### Required

libspiro-20220722 and libxml2-2.13.6

#### Recommended

GTK-3.24.48

#### Optional

giflib-5.2.2, git-2.48.1, libjpeg-turbo-3.0.1, libtiff-4.7.0, sphinx-8.2.1 (to build html documentation), and WOFF2-1.0.2

## Installation of FontForge

First, fix two security vulnerabilities in the Splinefont functionality:

    patch -Np1 -i ../fontforge-20230101-security_fixes-1.patch

Next, fix a problem with old translations exposed by gettext-0.22:

    sed -i.orig 's/\(%[^%[:space:]]*\)hs/\1s/g' \
     fontforgeexe/searchview.c po/de.po po/ca.po \
     po/hr.po po/it.po po/pl.po po/uk.po po/en_GB.po \
     po/fr.po po/vi.po po/ko.po po/ja.po

Install FontForge by running the following commands:

    mkdir build &&
    cd    build &&

    cmake -D CMAKE_INSTALL_PREFIX=/usr \
          -D CMAKE_BUILD_TYPE=Release  \
          -W no-dev .. &&
    make

To test the results, issue: make check.

Now, as the `root` user:

    make install

If you have installed sphinx-build, HTML documentation was built and installed in `/usr/share/doc/fontforge`. To be able to access it as a versioned directory, create a symlink as the `root` user:

    ln -sv fontforge /usr/share/doc/fontforge-20230101

## Command Explanations

`-D CMAKE_BUILD_TYPE=Release`: This switch is used to create an optimized release without debug information.

`-W no-dev`: This switch is used to suppress warnings intended for the package's developers.

`-D ENABLE_X11=ON`: use an X11 backend instead of GDK3 (gtk+-3) for basic Xorg graphics.

## Contents

Installed Programs: fontforge, fontimage, fontlint and sfddiff
Installed Library: libfontforge.so and /usr/lib/python3.13.2/site-packages/{fontforge,psMat}.so
Installed Directories: /usr/share/fontforge and optionally /usr/share/doc/fontforge{,-20230101}

### Short Descriptions

fontforge | is a program that allows you to create and modify font files
fontimage | is a program that produces an image showing representative glyphs of the font
fontlint | is a program that checks the font for certain common errors
sfddiff | is a program that compares two font files

- Prev

  feh-3.10.3

- Next

  FreeRDP-3.12.0

- Up
- Home