HarfBuzz text shaping engine
http://harfbuzz.github.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
3.1 KiB
71 lines
3.1 KiB
9 years ago
|
<chapter id="install-harfbuzz">
|
||
|
<title>Install Harfbuzz</title>
|
||
|
<section id="download">
|
||
|
<title id="download.title">Download</title>
|
||
|
<para>
|
||
|
For tarball releases of HarfBuzz, look
|
||
|
<ulink url="http://www.freedesktop.org/software/harfbuzz/release/">here</ulink>.
|
||
|
At the same place you will
|
||
|
also find Win32 binary bundles that include libharfbuzz DLL, hb-view.exe,
|
||
|
hb-shape.exe, and all dependencies.
|
||
|
</para>
|
||
|
<para>
|
||
|
The canonical source tree is available
|
||
|
<ulink url="http://cgit.freedesktop.org/harfbuzz/">here</ulink>.
|
||
|
Also available on <ulink url="https://github.com/behdad/harfbuzz">github</ulink>.
|
||
|
</para>
|
||
|
<para>
|
||
|
The API that comes with <filename class='headerfile'>hb.h</filename> will
|
||
|
not change incompatibly. Other, peripheral, headers are more likely to go
|
||
|
through minor modifications, but again, will do our best to never change
|
||
|
API in an incompatible way. We will never break the ABI.
|
||
|
</para>
|
||
|
<para>
|
||
|
If you are not sure whether Pango or HarfBuzz is right for you, read
|
||
|
<ulink url="http://mces.blogspot.in/2009/11/pango-vs-harfbuzz.html">this</ulink>.
|
||
|
</para>
|
||
|
</section>
|
||
|
<section id="building">
|
||
|
<title>Building</title>
|
||
|
<para>
|
||
|
On Linux, install the development packages for FreeType, Cairo, and GLib.
|
||
|
For example, on Ubuntu / Debian, you would do:
|
||
|
<programlisting>
|
||
|
<command>sudo apt-get install</command> <package>gcc g++ libfreetype6-dev libglib2.0-dev libcairo2-dev</package>
|
||
|
</programlisting>
|
||
|
whereas on Fedora, RHEL, CentOS, and other Red Hat based systems you would do:
|
||
|
<programlisting>
|
||
|
<command>sudo yum install</command> <package>gcc gcc-c++ freetype-devel glib2-devel cairo-devel</package>
|
||
|
</programlisting>
|
||
|
or using MacPorts:
|
||
|
<programlisting>
|
||
|
<command>sudo port install</command> <package>freetype glib2 cairo</package>
|
||
|
</programlisting>
|
||
|
</para>
|
||
|
<para>
|
||
|
If you are using a tarball, you can now proceed to running
|
||
|
<command>configure</command> and <command>make</command> as with any
|
||
|
other standard package. That should leave you with a shared library in
|
||
|
<filename>src/</filename>, and a few utility programs including hb-view
|
||
|
and hb-shape under <filename>util/</filename>.
|
||
|
</para>
|
||
|
<para>
|
||
|
If you are bootstraping from git, you need a few more tools before you
|
||
|
can run <filename>autogen.sh</filename> for the first time. Namely,
|
||
|
pkg-config and <ulink url="http://www.complang.org/ragel/">ragel</ulink>.
|
||
|
Again, on Ubuntu / Debian:
|
||
|
<programlisting>
|
||
|
<command>sudo apt-get install</command> <package>autoconf automake libtool pkg-config ragel gtk-doc-tools</package>
|
||
|
</programlisting>
|
||
|
and on Fedora, RHEL, CentOS:
|
||
|
<programlisting>
|
||
|
<command>sudo yum install</command> <package>autoconf automake libtool pkgconfig ragel gtk-doc</package>
|
||
|
</programlisting>
|
||
|
or using MacPorts:
|
||
|
<programlisting>
|
||
|
<command>sudo port install</command> <package>autoconf automake libtool pkgconfig ragel gtk-doc</package>
|
||
|
</programlisting>
|
||
|
</para>
|
||
|
</section>
|
||
|
</chapter>
|