Op 14-aug-2011, om 11:46 heeft Simon Geard het volgende geschreven:

> On Sun, 2011-08-14 at 09:52 +0200, Pol Vangheluwe wrote:
> 
>> So, where is this FT_stuff defined?
> 
> FT would be Freetype. Since you say you've already installed it,
> something in Ghostscript obviously isn't looking in the right place. Did
> you install Freetype to /usr, or to some location not in the standard
> search path?


I followed the instructions of BLFS Version svn-20110728 to build 
FreeType-2.4.4.
The library is indeed installed in /usr/lib:

pol [ ~ ]$ ls -l /usr/lib/libfree*
-rw-r--r-- 1 root root 3454556 13 aug 21:25 /usr/lib/libfreetype.a
-rwxr-xr-x 1 root root     947 13 aug 21:25 /usr/lib/libfreetype.la
lrwxrwxrwx 1 root root      20 13 aug 21:25 /usr/lib/libfreetype.so -> 
libfreetype.so.6.6.2
lrwxrwxrwx 1 root root      20 13 aug 21:25 /usr/lib/libfreetype.so.6 -> 
libfreetype.so.6.6.2
-rwxr-xr-x 1 root root 2263311 13 aug 21:25 /usr/lib/libfreetype.so.6.6.2

pol [ ~ ]$ ls -l /usr/bin/freet*
-rwxr-xr-x 1 root root 3825 13 aug 21:25 /usr/bin/freetype-config

Meanwhile, I found that a lot of headers are left in 
/usr/include/freetype2/freetype:

pol [ ~ ]$ ls -l /usr/include/freetype2/freetype
totaal 1008
drwxr-xr-x 2 root root   4096 13 aug 21:25 config
-rw-r--r-- 1 root root 244361 13 aug 21:25 freetype.h
-rw-r--r-- 1 root root  10342 13 aug 21:25 ftadvanc.h
-rw-r--r-- 1 root root   4621 13 aug 21:25 ftbbox.h
-rw-r--r-- 1 root root   6749 13 aug 21:25 ftbdf.h
-rw-r--r-- 1 root root  13998 13 aug 21:25 ftbitmap.h
-rw-r--r-- 1 root root  60826 13 aug 21:25 ftcache.h
-rw-r--r-- 1 root root   7264 13 aug 21:25 ftchapters.h
-rw-r--r-- 1 root root   5579 13 aug 21:25 ftcid.h
-rw-r--r-- 1 root root  12076 13 aug 21:25 fterrdef.h
-rw-r--r-- 1 root root   9456 13 aug 21:25 fterrors.h
-rw-r--r-- 1 root root   4039 13 aug 21:25 ftgasp.h
-rw-r--r-- 1 root root  39273 13 aug 21:25 ftglyph.h
-rw-r--r-- 1 root root  12600 13 aug 21:25 ftgxval.h
-rw-r--r-- 1 root root   4288 13 aug 21:25 ftgzip.h
-rw-r--r-- 1 root root  82550 13 aug 21:25 ftimage.h
-rw-r--r-- 1 root root  11406 13 aug 21:25 ftincrem.h
-rw-r--r-- 1 root root   7709 13 aug 21:25 ftlcdfil.h
-rw-r--r-- 1 root root  16764 13 aug 21:25 ftlist.h
-rw-r--r-- 1 root root   4256 13 aug 21:25 ftlzw.h
-rw-r--r-- 1 root root  17098 13 aug 21:25 ftmac.h
-rw-r--r-- 1 root root  22712 13 aug 21:25 ftmm.h
-rw-r--r-- 1 root root  26626 13 aug 21:25 ftmodapi.h
-rw-r--r-- 1 root root   7430 13 aug 21:25 ftmoderr.h
-rw-r--r-- 1 root root   7136 13 aug 21:25 ftotval.h
-rw-r--r-- 1 root root  32423 13 aug 21:25 ftoutln.h
-rw-r--r-- 1 root root   6289 13 aug 21:25 ftpfr.h
-rw-r--r-- 1 root root  11095 13 aug 21:25 ftrender.h
-rw-r--r-- 1 root root   9561 13 aug 21:25 ftsizes.h
-rw-r--r-- 1 root root  11175 13 aug 21:25 ftsnames.h
-rw-r--r-- 1 root root  19553 13 aug 21:25 ftstroke.h
-rw-r--r-- 1 root root   3897 13 aug 21:25 ftsynth.h
-rw-r--r-- 1 root root  10197 13 aug 21:25 ftsystem.h
-rw-r--r-- 1 root root   8443 13 aug 21:25 fttrigon.h
-rw-r--r-- 1 root root  34976 13 aug 21:25 fttypes.h
-rw-r--r-- 1 root root  10403 13 aug 21:25 ftwinfnt.h
-rw-r--r-- 1 root root   4721 13 aug 21:25 ftxf86.h
-rw-r--r-- 1 root root  20051 13 aug 21:25 t1tables.h
-rw-r--r-- 1 root root  62170 13 aug 21:25 ttnameid.h
-rw-r--r-- 1 root root  39894 13 aug 21:25 tttables.h
-rw-r--r-- 1 root root   5002 13 aug 21:25 tttags.h
-rw-r--r-- 1 root root   2229 13 aug 21:25 ttunpat.h

and that the missing FT_stuff can be found in ftglyph.h.

fapi_ft.c is looking here for headers:

/* GhostScript headers. */
#include "stdio_.h"
#include "malloc_.h"
#include "ierrors.h"
#include "ifapi.h"
#include "write_t1.h"
#include "write_t2.h"
#include "math_.h"
#include "gserror.h"
#include "gsmemory.h"
#include "gsmalloc.h"
#include "gxfixed.h"
#include "gdebug.h"
#include "gxbitmap.h"

/* FreeType headers */
#include <ft2build.h>
#include FT_FREETYPE_H
#include FT_INCREMENTAL_H
#include FT_GLYPH_H
#include FT_SYSTEM_H
#include FT_MODULE_H
#include FT_TRIGONOMETRY_H
#include FT_BBOX_H
#include FT_OUTLINE_H
#include FT_IMAGE_H

I find the following comment in ghostscipt/freetype/include/ft2build.h:

  /*************************************************************************/
  /*                                                                       */
  /* This file corresponds to the default `ft2build.h' file for            */
  /* FreeType 2.  It uses the `freetype' include root.                     */
  /*                                                                       */
  /* Note that specific platforms might use a different configuration.     */
  /* See builds/unix/ft2unix.h for an example.                             */
  /*                                                                       */
  /*************************************************************************/

and then in /ghostscript/freetype/builds/unix/ft2unix.h:

  /*************************************************************************/
  /*                                                                       */
  /* This is a Unix-specific version of <ft2build.h> that should be used   */
  /* exclusively *after* installation of the library.                      */
  /*                                                                       */
  /* It assumes that `/usr/local/include/freetype2' (or whatever is        */
  /* returned by the `freetype-config --cflags' or `pkg-config --cflags'   */
  /* command) is in your compilation include path.                         */
  /*                                                                       */
  /* We don't need to do anything special in this release.  However, for   */
  /* a future FreeType 2 release, the following installation changes will  */
  /* be performed:                                                         */
  /*                                                                       */
  /*   - The contents of `freetype-2.x/include/freetype' will be installed */
  /*     to `/usr/local/include/freetype2' instead of                      */
  /*     `/usr/local/include/freetype2/freetype'.                          */
  /*                                                                       */
  /*   - This file will #include <freetype2/config/ftheader.h>, instead    */
  /*     of <freetype/config/ftheader.h>.                                  */
  /*                                                                       */
  /*   - The contents of `ftheader.h' will be processed with `sed' to      */
  /*     replace all `<freetype/xxx>' with `<freetype2/xxx>'.              */
  /*                                                                       */
  /*   - Adding `/usr/local/include/freetype2' to your compilation include */
  /*     path will not be necessary anymore.                               */
  /*                                                                       */
  /* These changes will be transparent to client applications which use    */
  /* freetype-config (or pkg-config).  No modifications will be necessary  */
  /* to compile with the new scheme.                                       */
  /*                                                                       */
  /*************************************************************************/

So I think that I am now close to the solution?

pvg
-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to