Re: gcc2.95, libttf2, xfree86, and Alpha
With any luck, we should be using a newer gcc soon, so this should go away
then. I don't know a time schedule yet, but we'll be going to gcc 3.2,
On Mon, 12 Aug 2002, Doug Larrick wrote:
> Due to what appears to be a code generation issue, libttf2
> 1.4pre.20011029-1 and XFree86 4.2 segfault on Alpha when attempting to
> render some TrueType fonts.
> I have not fully traced this code gen error to the source that triggers it
> in libttf2, but it appears to be similar to the one in gtk+ where adjacent
> 'short' fields in a struct get corrupted when writing into one or the
> other. You can reproduce it by building the source for libttf2 and
> running the example programs (I used 'ftview 12 Arial.ttf').
> Compiling libttf2 without -O2 (without any -O flag) on Alpha works around
> this problem, as does compiling with gcc-3.0. I would recommend to the
> libttf2 maintainer to follow one of these courses of action to close this
> bug. (I'll forward this message to the bug).
> The situation in XFree86 is more difficult. This bug is pretty major for
> X because any attempt to use an affected TrueType font causes the server
> to exit. This bug has been present for a long time (certainly since
> XFree86 4.1) and is still present in 4.2. X uses the freetype sources
> (major version 1, now renamed libttf2 by Debian) directly, building pieces
> of the library into the libfreetype.a extension module, rather than
> relying on the library from the package. I can see four ways around the
> bug for X:
> * Modify this extension's build procedure, on Alpha, to not use
> optimization. We certainly don't want to compile the entire X server
> without optimization.
> * Build X with gcc-3.0. I have built the latest experimental XFree86 4.2
> packages with gcc-3.0 and they do fix this problem, and seem to work OK.
> * Get X to switch to freetype 2 (libfreetype6 on Debian). This is a
> non-trivial change, as the API was completely rewritten. Freetype 2 also
> has problems on Alpha (e.g. misrendered glyphs) but I have not yet looked
> into them.
> * Find the code that triggers this code gen bug and modify it to make the
> compiler happy. This approach turned out to be unworkable for gtk+ on
> Alpha because there were other similar failures.
> To UNSUBSCRIBE, email to email@example.com
> with a subject of "unsubscribe". Trouble? Contact firstname.lastname@example.org