<div dir="ltr">A few more notes.<div><br></div><div>- If you don't have glib installed, then HarfBuzz won't build hb-shape. I wanted this so I had to install glib (make sure you get the latest version: some earlier versions get compile errors):</div>
<div><br></div><div><a href="http://ftp.gnome.org/pub/gnome/sources/glib/2.39/glib-2.39.0.tar.xz">http://ftp.gnome.org/pub/gnome/sources/glib/2.39/glib-2.39.0.tar.xz</a><br></div><div><br></div><div>which requires libffi:</div>
<div><br></div><div><a href="ftp://sourceware.org/pub/libffi/libffi-3.0.13.tar.gz">ftp://sourceware.org/pub/libffi/libffi-3.0.13.tar.gz</a><br></div><div><br></div><div>(Do this before installing pkg-config and you avoid the need for configuring --with-internal-glib.)</div>
<div><br></div><div>- glib also needs gettext, so I installed that after building it (OS X also provides its own BSD gettext library; not sure if this will cause conflicts)</div><div><br></div><div>- I noticed that the Xcode command-line tools install a libtool in /usr/bin, so it's probably not necessary to install libtool.</div>
<div><p class="">James</p></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Nov 1, 2013 at 1:43 PM, James Clark <span dir="ltr"><<a href="mailto:jjc@jclark.com" target="_blank">jjc@jclark.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Building HarfBuzz from the github repository on OS X (Mavericks) turned into quite an involved process. I was doing this by hand. Next time I would try homebrew.</div>
<div><br></div><div>Most of the complexity was caused by gtk-doc.</div>
<div><br></div><div>Anyway, here are my notes. Unfortunately, I made these only after the event, so I may have missed a few details.</div><div><br></div><div>You'll need Xcode and the command line tools for Xcode (available from <a href="https://developer.apple.com/downloads/index.action" target="_blank">https://developer.apple.com/downloads/index.action</a>). You'll then need to install the following. Unless otherwise stated, use "./configure; make; sudo make install".</div>
<div><br></div><div>* Automake and friends (needed by harfbuzz)</div><div><br></div><a href="http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz" target="_blank">http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz</a><br>
<a href="http://ftpmirror.gnu.org/automake/automake-1.14.tar.gz" target="_blank">http://ftpmirror.gnu.org/automake/automake-1.14.tar.gz</a><br>
<a href="http://ftpmirror.gnu.org/libtool/libtool-2.4.2.tar.gz" target="_blank">http://ftpmirror.gnu.org/libtool/libtool-2.4.2.tar.gz</a><div><br></div><div>* pkg-config (needed by harfbuzz)<br><br></div><div><a href="http://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz" target="_blank">http://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz</a><div>
<br></div><div>Configure with --with-internal-glib</div><div><br></div><div>* Ragel (needed by harfbuzz)</div><div><br></div><div><a href="http://www.complang.org/ragel/ragel-6.8.tar.gz" target="_blank">http://www.complang.org/ragel/ragel-6.8.tar.gz</a><br>
</div><div><br></div><div>* ITS Tool (needed by gtk-doc)</div><div><br><div><a href="http://files.itstool.org/itstool/itstool-1.2.0.tar.bz2" target="_blank">http://files.itstool.org/itstool/itstool-1.2.0.tar.bz2</a></div>
<div><br></div><div>
* XZ utils (needed to unpack gtk-doc)</div><div><br></div><div><a href="http://tukaani.org/xz/xz-5.0.5.tar.gz" target="_blank">http://tukaani.org/xz/xz-5.0.5.tar.gz</a><br><div><br></div><div>* Python libxml2 module (needed by itstool)</div>
<div><br></div><div><div>Download and unpack</div><div><br></div><div><a href="http://xmlsoft.org/sources/libxml2-2.9.1.tar.gz" target="_blank">http://xmlsoft.org/sources/libxml2-2.9.1.tar.gz</a></div><div><br></div><div>
cd to the the python/ subdirectory and do</div>
<div><br></div><div>python setup.py build</div><div>sudo python setup.py install</div><div><br></div><div><div>* DocBook (needed by gtk-doc):</div></div><div><br></div><div>Unpack<br><br><a href="http://www.docbook.org/xml/4.3/docbook-xml-4.3.zip" target="_blank">http://www.docbook.org/xml/4.3/docbook-xml-4.3.zip</a><br>
<br>into say /usr/local/share/docbook/dtd<br><br>Unpack <br><br><a href="http://sourceforge.net/projects/docbook/files/docbook-xsl/1.78.1/docbook-xsl-1.78.1.zip/download" target="_blank">http://sourceforge.net/projects/docbook/files/docbook-xsl/1.78.1/docbook-xsl-1.78.1.zip/download</a><br>
<br>and rename to /usr/local/share/docbook/xsl<div><br></div><div>Create a /usr/local/share/docbook/catalog.xml containing:<br><div><font face="Courier New, Courier, monospace"><span style="line-height:18px"><br></span></font></div>
<?xml version='1.0'?><br><catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"><br><nextCatalog catalog="dtd/catalog.xml"/><br><nextCatalog catalog="xsl/catalog.xml"/><br>
</catalog><br><div><br></div><div>* gettext-tools (needed by gtk-doc)</div><div><br></div><div>Configure and make gettext (but don't install it):</div><div><br></div><div><a href="http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.3.1.tar.gz" target="_blank">http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.3.1.tar.gz</a><br>
</div><div><br></div><div>Add gettext-0.18.3.1/gettext-tools to your PATH while making gtk-doc.</div><div><br></div><div>* gtk-doc (needed by harfbuzz)</div><div><br></div><div>Download:</div><div><br></div><div><a href="http://ftp.gnome.org/pub/GNOME/sources/gtk-doc/1.19/gtk-doc-1.19.tar.xz" target="_blank">http://ftp.gnome.org/pub/GNOME/sources/gtk-doc/1.19/gtk-doc-1.19.tar.xz</a><br>
</div><div><br></div><div>Unpack with xzcat gtk-doc-1.19.tar.xz | tar xf -</div><div><br></div><div>Configure with</div><div><br></div><div>./configure --with-xml-catalog=/usr/local/share/docbook/catalog.xml</div><div><br>
</div><div>Then make and install.</div><div><br></div><div>* HarfBuzz</div><div><br></div><div>Finally do</div><div><br></div><div>./autogen.sh</div><div><br></div><div>in the harfbuzz directory.</div><span class="HOEnZb"><font color="#888888"><div>
<br></div><div>
James</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div></font></span></div></div></div></div></div></div></div>
</blockquote></div><br></div>