[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
FT_New_Face returns FT_Missing_Module
From: |
Brian |
Subject: |
FT_New_Face returns FT_Missing_Module |
Date: |
Fri, 13 Dec 2019 23:32:02 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 |
Hi,
tl;dr: No matter what I feed it, FT_New_Face always returns 0x0B,
FT_Missing_Module. Even if I feed it a file that isn't a font at all,
whereupon I would expect FT_Invalid_File_Format or
FT_Unknown_File_Format, I still get FT_Missing_Module. How do I figure
out what module is missing?
I'm working with a default build. I've downloaded the source,
freetype-2.10.0.tar.bz2. I've installed all the dependent libraries.
My configure command is completely plain, no arguments. I am linking my
simple test program against the static libfreetype.a. Here's my link step:
$ g++ -o font_test font_test.o objs/.libs/libfreetype.a -lpng -lz -lbz2
-lharfbuzz
Here's the meat of my font_test.cpp (extremely simple):
FT_Library s_lib;
FT_Error err = FT_Init_FreeType(&s_lib);
// .. check for errors ..
FT_Face m_face;
err = FT_New_Face(s_lib, filename, 0, &m_face);
// .. check for errors...FT_Missing_Module
I've also tried reading the file into memory and using
FT_New_Face_Memory, but the result is the same; FT_Missing_Module.
I hope this is an appropriate place for this question. I appreciate
being pointed elsewhere if this isn't the right place.
Many thanks,
-Brian
PS: My goal is to use freetype in an embedded environment. I was able
to cross-compile it without any problems, but it crashes, and this
particular platform (ESP32-WROOM module) is basically impossible to
debug. So I figured I'd do a native build on my dev machine with debug
symbols so I could step through and maybe figure out why the ESP32 was
crashing...but I can't get past the FT_Missing_Module error.
Ultimately, I want to hack and slash at libfreetype to get it as small
as possible while maintaining the limited set of features I actually
need (just rasterization and antialiasing for ttf fonts, basically).
- FT_New_Face returns FT_Missing_Module,
Brian <=