freetype
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft] Errors when compiling freetype 2.3.5 on tru64 5.1b


From: Werner LEMBERG
Subject: Re: [ft] Errors when compiling freetype 2.3.5 on tru64 5.1b
Date: Sun, 04 May 2008 11:10:49 +0200 (CEST)

> >   cpp -I/usr/local/include \
> >       -I/usr/local/freetype2/freetype-2.3.5/objs \
> >       -I./builds/unix \
> >       -I/usr/local/freetype2/freetype-2.3.5/include \
> >       -DFT_CONFIG_OPTION_SYSTEM_ZLIB \
> >       "-DFT_CONFIG_CONFIG_H=<ftconfig.h>" \
> >       -DFT2_BUILD_LIBRARY \
> >       "-DFT_CONFIG_MODULES_H=<ftmodule.h>" \
> >       builds/unix/ftsystem.c \
> >       -DPIC \
> >       > ftsystem.cpp
> >
> > Inspect this file and check where `FT_Int' is defined.  There should
> > be a line
> >
> >   typedef signed int FT_Int;
> >
> > be defined before any usage of it.
>
> It is defined and before being used.

No, it isn't!  The first occurrence of FT_Int is in line 7960:

  extern FT_Int
  FT_Trace_Get_Count( void );

but FT_Int is defined in line 10470:

  typedef signed int  FT_Int;


I'm now sure that there's a severe mangling of FreeType 1 and
FreeType 2 header files: If you do a `grep /usr/local/', you see this:

  # 1 "/usr/local/include/ft2build.h"
  # 1 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftheader.h"
  # 1 "/usr/local/freetype2/freetype-2.3.5/include/freetype/internal/internal.h"
  # 723 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftheader.h"
  # 57 "/usr/local/include/ft2build.h"
  # 1 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftoption.h"
  # 1 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftstdlib.h"
  # 1 "/usr/local/include/standards.h"
  # 56 "/usr/local/include/standards.h"
  # 37 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftstdlib.h"
  # 67 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftstdlib.h"
  # 82 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftstdlib.h"
  # 106 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftstdlib.h"
  # 124 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftstdlib.h"
  # 162 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftstdlib.h"
  # 175 "/usr/local/freetype2/freetype-2.3.5/include/freetype/config/ftstdlib.h"
  # 1 "/usr/local/freetype2/freetype-2.3.5/include/freetype/internal/ftdebug.h"
  # 1 "/usr/local/include/freetype/freetype.h"
  # 1 "/usr/local/include/freetype/fterrid.h"
  # 34 "/usr/local/include/freetype/freetype.h"
  # 1 "/usr/local/include/freetype/ftnameid.h"
  # 35 "/usr/local/include/freetype/freetype.h"


The problematic line is after inclusion of `ftdebug.h': This header
file loads FT_FREETYPE_H, which expands to <freetype/freetype.h>, and
since you have `/usr/local/include' before
`/usr/local/freetype2/freetype-2.3.5/include', the wrong `freetype.h'
(from FreeType 1) gets loaded.

With other words, `-I/usr/local/include' must come after
`-I/usr/local/freetype2/freetype-2.3.5/include'.


    Werner




reply via email to

[Prev in Thread] Current Thread [Next in Thread]