Bug 4430

Summary: compile fails in cairo-ft-font.c; freetype version problem?
Product: cairo Reporter: Benny Siegert <bsiegert>
Component: freetype font backendAssignee: Owen Taylor <otaylor>
Status: RESOLVED INVALID QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: normal    
Priority: high    
Version: 1.0.0   
Hardware: PowerPC   
OS: Mac OS X (All)   
Whiteboard:
i915 platform: i915 features:

Description Benny Siegert 2005-09-12 12:40:17 UTC
When compiling cairo-1.0.0 on Mac OS X 10.3, the build stops at cairo-ft-font.c
with the following errors:

cairo-ft-font.c: In function `_get_bitmap_surface':
cairo-ft-font.c:729: error: `FT_PIXEL_MODE_MONO' undeclared (first use in this
function)
cairo-ft-font.c:729: error: (Each undeclared identifier is reported only once
cairo-ft-font.c:729: error: for each function it appears in.)
cairo-ft-font.c:773: error: `FT_PIXEL_MODE_LCD' undeclared (first use in this
function)
cairo-ft-font.c:774: error: `FT_PIXEL_MODE_LCD_V' undeclared (first use in this
function)
cairo-ft-font.c:775: error: `FT_PIXEL_MODE_GRAY' undeclared (first use in this
function)
cairo-ft-font.c:878: error: `FT_PIXEL_MODE_GRAY2' undeclared (first use in this
function)
cairo-ft-font.c:879: error: `FT_PIXEL_MODE_GRAY4' undeclared (first use in this
function)
cairo-ft-font.c: In function `_render_glyph_outline':
cairo-ft-font.c:953: warning: implicit declaration of function `FT_LOAD_TARGET_MODE'
cairo-ft-font.c:953: error: `FT_RENDER_MODE_LCD' undeclared (first use in this
function)
cairo-ft-font.c:954: error: `FT_RENDER_MODE_LCD_V' undeclared (first use in this
function)
cairo-ft-font.c:969: error: `FT_PIXEL_MODE_MONO' undeclared (first use in this
function)
cairo-ft-font.c:1003: error: `FT_PIXEL_MODE_GRAY' undeclared (first use in this
function)
cairo-ft-font.c: In function `_render_glyph_bitmap':
cairo-ft-font.c:1069: error: `FT_RENDER_MODE_NORMAL' undeclared (first use in
this function)
cairo-ft-font.c: In function `_cairo_ft_unscaled_font_create_glyph':
cairo-ft-font.c:1289: error: `FT_GLYPH_FORMAT_OUTLINE' undeclared (first use in
this function)
cairo-ft-font.c: In function `_get_pattern_load_flags':
cairo-ft-font.c:1392: error: `FT_LOAD_TARGET_LCD' undeclared (first use in this
function)
cairo-ft-font.c:1396: error: `FT_LOAD_TARGET_LCD_V' undeclared (first use in
this function)
cairo-ft-font.c: In function `_get_options_load_flags':
cairo-ft-font.c:1451: error: `FT_LOAD_TARGET_LCD' undeclared (first use in this
function)
cairo-ft-font.c:1455: error: `FT_LOAD_TARGET_LCD_V' undeclared (first use in
this function)
cairo-ft-font.c:1472: error: `FT_LOAD_TARGET_LIGHT' undeclared (first use in
this function)
cairo-ft-font.c:1476: error: `FT_LOAD_TARGET_NORMAL' undeclared (first use in
this function)
*** Error code 1

Stop in /Volumes/ExtHFS/mirports/graphics/cairo/w-cairo-1.0.0-0/cairo-1.0.0/src.



This was with the default options. The exact same source compiles cleanly on
10.4 (Tiger). I suspect the freetype version:

[manitou:mirports/graphics/cairo] bsiegert% freetype-config --version
9.0.3

However, the configure script says that the version is new enough.
Comment 1 Daniel Macks 2005-09-26 22:00:28 UTC
cairo-1.0.0 builds fine for me on 10.3 via Fink. The fink cairo package links
fink's own freetype-2.1.9 package ('freetype-config --version' reports 9.7.3)
not the freetype that comes with Apple's X11.
Comment 2 Sanjay N Narasimhan 2005-10-06 09:30:21 UTC
I'm getting the same error while compiling in OSX Tiger 10.4.2

cairo-ft-font.c: In function '_get_bitmap_surface':
cairo-ft-font.c:729: error: 'FT_PIXEL_MODE_MONO' undeclared (first use in this function)
cairo-ft-font.c:729: error: (Each undeclared identifier is reported only once
cairo-ft-font.c:729: error: for each function it appears in.)
cairo-ft-font.c:773: error: 'FT_PIXEL_MODE_LCD' undeclared (first use in this function)
cairo-ft-font.c:774: error: 'FT_PIXEL_MODE_LCD_V' undeclared (first use in this function)
cairo-ft-font.c:775: error: 'FT_PIXEL_MODE_GRAY' undeclared (first use in this function)
cairo-ft-font.c:878: error: 'FT_PIXEL_MODE_GRAY2' undeclared (first use in this function)
cairo-ft-font.c:879: error: 'FT_PIXEL_MODE_GRAY4' undeclared (first use in this function)
cairo-ft-font.c: In function '_render_glyph_outline':
cairo-ft-font.c:953: warning: implicit declaration of function 'FT_LOAD_TARGET_MODE'
cairo-ft-font.c:953: warning: nested extern declaration of 'FT_LOAD_TARGET_MODE'
cairo-ft-font.c:953: error: 'FT_RENDER_MODE_LCD' undeclared (first use in this function)
cairo-ft-font.c:954: error: 'FT_RENDER_MODE_LCD_V' undeclared (first use in this function)
cairo-ft-font.c:969: error: 'FT_PIXEL_MODE_MONO' undeclared (first use in this function)
cairo-ft-font.c:1003: error: 'FT_PIXEL_MODE_GRAY' undeclared (first use in this function)
cairo-ft-font.c: In function '_render_glyph_bitmap':
cairo-ft-font.c:1069: error: 'FT_RENDER_MODE_NORMAL' undeclared (first use in this function)
cairo-ft-font.c: In function '_cairo_ft_unscaled_font_create_glyph':
cairo-ft-font.c:1289: error: 'FT_GLYPH_FORMAT_OUTLINE' undeclared (first use in this function)
cairo-ft-font.c: In function '_get_pattern_load_flags':
cairo-ft-font.c:1392: error: 'FT_LOAD_TARGET_LCD' undeclared (first use in this function)
cairo-ft-font.c:1396: error: 'FT_LOAD_TARGET_LCD_V' undeclared (first use in this function)
cairo-ft-font.c: In function '_get_options_load_flags':
cairo-ft-font.c:1451: error: 'FT_LOAD_TARGET_LCD' undeclared (first use in this function)
cairo-ft-font.c:1455: error: 'FT_LOAD_TARGET_LCD_V' undeclared (first use in this function)
cairo-ft-font.c:1472: error: 'FT_LOAD_TARGET_LIGHT' undeclared (first use in this function)
cairo-ft-font.c:1476: error: 'FT_LOAD_TARGET_NORMAL' undeclared (first use in this function)
make[2]: *** [cairo-ft-font.lo] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
Comment 3 Behdad Esfahbod 2007-08-21 19:37:11 UTC
Things have changed a lot since...
Comment 4 Benny Siegert 2007-08-21 23:15:13 UTC
I think the way this bug was handled is not good style, to put it mildly. Nobody bothers to answer or even verify it until it is so old that the operating system it references is also EOL. Great work.
Comment 5 Behdad Esfahbod 2007-08-21 23:20:59 UTC
Don't take it personal.  I have rewritten the way cairo looks for freetype since...  And we have not received any other reports since yours in 2005.  How do you like me to handle it?  Leave it open?  What?
Comment 6 Carl Worth 2007-08-22 10:31:15 UTC
(In reply to comment #4)
> I think the way this bug was handled is not good style, to put it mildly.

Uhm... what?

Looking back at the history, it looks like Daniel Macks provided a fix
or workaround in less than two weeks after your original report. That
sounds like the bug report was a great success to me. Should we
complain that you didn't answer or verify that fix?

> Nobody bothers to answer or even verify it until it is so old that the
> operating system it references is also EOL. Great work.

The fact that it was closed now has nothing to do with how old the
operating system is that it references. It has to do with the fact
that cairo has changed a lot since then, so the details are likely
entirely not the same anymore.

As for you not getting more replies. I guess I could have said at some
point, "Strange, nobody else is reporting any problems like this---I
wonder what might be unique about your setup". So if not saying that
was a failing on our part, so be it. We're definitely busy, and we
don't always reply with every nicety possible. I'm sorry about that,
but that's really just the way it is to some extent. And I don't have
any magic answer for making it better.

In the future, if you are wondering why you're not getting a reply to
something, (in either bugzilla or the mailing list), please feel free
to follow up and ask why. That can often remind us that we haven't
followed up, (and also let us know that there's someone that's still
struggling with the issue and caring about it). Otherwise, it's hard
for us to disnguish from the case of someone posting a problem then
fixing things on their end, and not closing the bug report.

I hope that helps explain things.

And have fun with cairo!

-Carl

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.