[tex-k] FAIL: tests/ttf.test

Peter Breitenlohner peb at mppmu.mpg.de
Wed Nov 14 12:59:16 CET 2012

On Fri, 9 Nov 2012, Jindrich Novy wrote:

>> On Mi, 07 Nov 2012, Peter Breitenlohner wrote:
>>> according to the msg above the first undefined reference is
>>>   icu_50::OpenTypeLayoutEngine::characterProcessing(unsigned short const*,
>>>     int, int, int, signed char, unsigned short*&, icu_50::LEGlyphStorage&,
>>>     LEErrorCode&)
>>> so please verify that libs/icu/icu-build/lib/libicule.a defines exactly this.
>> nm --demangle libicule.a | grep -i icu_50::OpenTypeLayoutEngine::characterProcessing
>> gives me:
>> 0000000000000000 T
>> icu_50::OpenTypeLayoutEngine::characterProcessing(char16_t const*, int,
>> int, int, signed char, char16_t*&, icu_50::LEGlyphStorage&, LEErrorCode&)
>> So we would need
>> 	unsigned short	<-> 	char16_t
>> to make that match.
> After consultation with gcc guys it turned out that libicu compiles
> well just with -std=c++11 in CXXFLAGS. The problem is that part of it
> is built with a different C++ stanard (c++03) what makes some symbols
> unresolved.

Hi Jindrich, Norbert, Karl,

as far as I can see, 'unsigned short' and 'char16_t' are actually the same
and they are compatible for arg1 (const LEUnicode []) but there is a problem
with arg6 (LEUnicode*&).  This may or may not be a bug in gcc-4.7.2.

You can avoid this problem by using gcc <=4.6 if possible, or for gcc 4.7
   Build ... CXX="'g++ -std=c++11'" ...

Note, however, that for gcc 4.7 you need at least svn r28258 because there
was also a problem with dvisvgm.

We'll have to see if the xetex problem disappears with a later gcc version
or otherwise add -std=c++11 to the xetex specific CXXFLAGS (when using gcc
4.7 or later).

> Jindrich
>> Best wishes
>> Norbert
>> ------------------------------------------------------------------------
>> Norbert Preining            preining@{jaist.ac.jp, logic.at, debian.org}
>> JAIST, Japan                                 TeX Live & Debian Developer
>> DSA: 0x09C5B094   fp: 14DF 2E6C 0307 BE6D AD76  A9C0 D2BF 4AA3 09C5 B094
>> ------------------------------------------------------------------------
>> IPING (participial vb.)
>> The increasingly anxious shifting from leg to leg you go through when
>> you are desperate to go to the lavatory and the person you are talking
>> to keeps on remembering a few final things he want to mention.
>> 			--- Douglas Adams, The Meaning of Liff
> -- 
> Jindrich Novy <jnovy at redhat.com>   http://people.redhat.com/jnovy/
> Kdo víno má a nepije, kdo hrozny má a nejí je, kdo ?enu má a nelíbá,
> kdo zábav? se vyhýbá, na toho vemte bi? a h?l, to není ?lov?k, to je v?l.
> --- Jan Werich

Peter Breitenlohner <peb at mppmu.mpg.de>

More information about the tex-k mailing list