[Rd] R/Sweave/cairo/freetype bug fix.

Hin-Tak Leung htl10 at users.sourceforge.net
Sat Mar 30 09:25:37 CET 2013

The problem was first seen with R/Sweave (#c0) then reproduced directly with cairo (#c10) and was eventually traced to freetype. The 5-part bug fix:
was committed to freetype in January and will form the next release (2.4.12). They were back ported to 2.4.11
and the redhat people had further back-ported it to 2.4.10 for fedora 18/19 (#c51).

The freetype people had reproduced the problem with a latin font, so this affects most people, unlike what the initial report (#c0) suggests.

Since freetype is part of X11, most unix/linux users would be understandably nervous about breaking X (see #c45 for screenshot of broken gnome terminal!) and should wait up to a year before the new and not-yet-released 2.4.12 becomes an official upgrade; or contact their favourite unix vendors and/or Apple for upgrades. AFAIK, current up-to-date linux distributions ships the rather older 2.4.10, with the exception of fedora 18/19 (#c51). Mac OS X 10.5 ships freetype 2.3.5 as part of X11; I haven't bother looking up later Mac OS X's.

The official R binaries for windows and mac OS X are compiled against static libraries of cairo 1.10.2 (over 2 years old), and cairo 1.11.2 and freetype 2.4.4 respectively, and are firmly in the "do not work correctly" category.

The long and short of the story is that R/Sweave uses a feature of cairo which wasn't implemented before cairo 1.11.2 (#c13, Jan 2011), which in turn depends on a feature of freetype that has been around since 2005 but did not anticipate cairo's usage. It is commendable that the freetype people did not refer to cairo's usage as "misuse" but took the patience to address the problem, unlike some group's style.

It has been an interesting few months returning to freetype after about 17 years, I think.

Here is how to look up what version of freetype - libfreetype.so.x.y.z for most unix platforms, and /usr/X11/lib/libfreetype.x.y.z.dylib on Mac OS X:

(excerpt from docs/VERSION.DLL)

     version    x.y.z   date of release
     2.4.11     6.10.0  Dec 2012
     2.4.10     6.9.0   June 2012
     2.4.9      6.8.1   March 2012
     2.4.4      6.6.2   Nov 2010  (official R mac binaries)
     2.3.5      6.3.16  July 2007 (Mac OS X 10.5)

More information about the R-devel mailing list