Confirmed. I have xft-2.0-r1 and xfree-4.2.1-r2 installed: make[2]: Entering directory `/var/tmp/portage/avifile-0.7.15.20020816/work/avifile0.7-0.7.15/lib/video' source='renderer.cpp' object='renderer.lo' libtool=yes \ depfile='.deps/renderer.Plo' tmpdepfile='.deps/renderer.TPlo' \ depmode=gcc3 /bin/sh ../../admin/depcomp \ /bin/sh ../../libtool --mode=compile i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -I/usr/X11R6/include -D_REENTRANT -I./../subtitles -Wall -Wno-unused -I../../include -g -O2 -mcpu=i686 -march=i686 -ffast-math -pipe -c -o renderer.lo `test -f 'renderer.cpp' || echo './'`renderer.cpp i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -I/usr/X11R6/include -D_REENTRANT -I./../subtitles -Wall -Wno-unused -I../../include -g -O2 -mcpu=i686 -march=i686 -ffast-math -pipe -c renderer.cpp -MT renderer.lo -MD -MP -MF .deps/renderer.TPlo -fPIC -DPIC -o renderer.lo In file included from renderer.cpp:50: /usr/X11R6/include/X11/Xft/Xft.h:52: syntax error before `;' token /usr/X11R6/include/X11/Xft/Xft.h:86: 'FT_UInt' is used as a type, but is not defined as a type. /usr/X11R6/include/X11/Xft/Xft.h:93: 'FT_UInt' is used as a type, but is not defined as a type. /usr/X11R6/include/X11/Xft/Xft.h:190: type specifier omitted for parameter ` FT_UInt' /usr/X11R6/include/X11/Xft/Xft.h:190: parse error before `*' token /usr/X11R6/include/X11/Xft/Xft.h:295: type specifier omitted for parameter ` FT_UInt' /usr/X11R6/include/X11/Xft/Xft.h:295: parse error before `*' token /usr/X11R6/include/X11/Xft/Xft.h:343: parse error before `*' token /usr/X11R6/include/X11/Xft/Xft.h:380: type specifier omitted for parameter ` FT_UInt' /usr/X11R6/include/X11/Xft/Xft.h:380: parse error before `*' token /usr/X11R6/include/X11/Xft/Xft.h:386: type specifier omitted for parameter ` FT_UInt' /usr/X11R6/include/X11/Xft/Xft.h:386: parse error before `*' token /usr/X11R6/include/X11/Xft/Xft.h:395: type specifier omitted for parameter ` FT_UInt' /usr/X11R6/include/X11/Xft/Xft.h:395: parse error before `,' token /usr/X11R6/include/X11/Xft/Xft.h:405: parse error before `*' token /usr/X11R6/include/X11/Xft/Xft.h:448: type specifier omitted for parameter ` FT_UInt' /usr/X11R6/include/X11/Xft/Xft.h:448: parse error before `*' token make[2]: *** [renderer.lo] Error 1 make[2]: Leaving directory `/var/tmp/portage/avifile-0.7.15.20020816/work/avifile0.7-0.7.15/lib/video' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/avifile-0.7.15.20020816/work/avifile0.7-0.7.15/lib' make: *** [all-recursive] Error 1 !!! ERROR: media-video/avifile-0.7.15.20020816 failed. !!! Function src_compile, Line 70, Exitcode 2 !!! (no error message)
Problem is that it also include /usr/include (-I/usr/include), and thus the freetype1 headers are seletected before freetype2 headers. The fix is simple, just add: export C_INCLUDE_PATH="${C_INCLUDE_PATH}:/usr/include/freetype2" export CPLUS_INCLUDE_PATH="${CPLUS_INCLUDE_PATH}:/usr/include/freetype2" Anyhow, this is fixed in -r1.