HarfBuzz-2.6.0

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

### Chapter 10. Graphics and Font Libraries

- Prev

  Graphite2-1.3.13

- Next

  JasPer-2.0.14

- Up
- Home

# HarfBuzz-2.6.0

## Introduction to Harfbuzz

The HarfBuzz package contains an OpenType text shaping engine.

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

### Package Information

- Download (HTTP): https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-2.6.0.tar.xz

- Download MD5 sum: 3e2653d2195d6c18e5cded055c873601

- Download size: 5.5 MB

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

- Estimated build time: 0.8 SBU (Using parallelism=4; with tests)

### HarfBuzz Dependencies

#### Recommended

GLib-2.60.6 (required for Pango), Graphite2-1.3.13 (required for building texlive-20190410 or LibreOffice-6.3.0.4 with system harfbuzz), ICU-64.2, and FreeType-2.10.1 (after HarfBuzz-2.6.0 is installed, reinstall FreeType-2.10.1)

#### Optional

Cairo-1.16.0 (circular: build cairo and all its recommended dependencies, including harfbuzz, first, then rebuild harfbuzz if the cairo backend is needed), gobject-introspection-1.60.2, GTK-Doc-1.32, and FontTools (Python 2 or Python 3 module, for the testsuite)

### Warning

Recommended dependencies are not strictly required to build the package. However, you might not get expected results at runtime if you don't install them. Please do not report bugs with this package if you have not installed the recommended dependencies.

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/harfbuzz

## Installation of HarfBuzz

Install HarfBuzz by running the following commands:

    ./configure --prefix=/usr --with-gobject --with-graphite2 &&
    make

If FontTools is installed for Python 3 and you want to test the results with it, adjust the test suite: find -name \*.py -exec sed '1s@python@&3@' -i {} \; . To test the results, issue: make check.

Now, as the `root` user:

    make install

## Command Explanations

`--with-gobject`: This switch enables building of the HarfBuzz GObject wrapper. Remove it if you did not install GLib.

`--with-graphite2`: This switch enables Graphite2 support, which is required for building texlive-20190410 or LibreOffice-6.3.0.4 with system harfbuzz.

`--enable-gtk-doc`: Use this parameter if GTK-Doc is installed and you wish to rebuild and install the API documentation.

## Contents

Installed Programs: hb-ot-shape-closure, hb-shape, hb-subset, and hb-view (only if cairo is installed)
Installed Libraries: libharfbuzz.so, libharfbuzz-gobject.so, libharfbuzz-icu.so, and libharfbuzz-subset.so
Installed Directories: /usr/{include,lib/cmake,share/gtk-doc/html}/harfbuzz

### Short Descriptions

hb-ot-shape-closure | gives the set of characters contained in a string, represented as single characters and/or single character names. Example: hb-ot-shape-closure /usr/share/fonts/dejavu/DejaVuSans.ttf "Hello World.".
hb-shape | is used for the conversion of text strings into positioned glyphs.
hb-subset | is used to create subsets of fonts, and display text using them.
hb-view | may be used for a graphical view of a string shape, using a particular font, as a set of glyphs. Output format is automatically defined by the file extension, the supported ones being ansi/png/svg/pdf/ps/eps. Example: hb-view --output-file=hello.png /usr/share/fonts/dejavu/DejaVuSans.ttf "Hello World.".
`libharfbuzz.so` | HarfBuzz text shaping library.
`libharfbuzz-gobject.so` | HarfBuzz text shaping library GObject integration.
`libharfbuzz-icu.so` | HarfBuzz text shaping library ICU integration.

Last updated on 2019-08-16 15:28:01 -0700

- Prev

  Graphite2-1.3.13

- Next

  JasPer-2.0.14

- Up
- Home