gcc在编译时找不到`FT_Error_String`。

问题描述 投票:0回答:1

我正试图编译一个使用了 freetype2我下载并编译了最新版本的 freetype2 从一个官方网站上。我用这个命令编译程序。

gcc ttf2sfn.c -I/home/emilia/os/freetype-2.10.1/include -L/home/emilia/os/freetype-2.10.1/objs -lfreetype

然而,链接器找不到 "FT_Error_String "字符。它打印了这个错误信息。

/tmp/cc6FGxyc.o: In function `main':
ttf2sfn.c:(.text+0x25aa): undefined reference to `FT_Error_String'
ttf2sfn.c:(.text+0x352c): undefined reference to `FT_Error_String'
collect2: error: ld returned 1 exit status

为什么会出现这种情况?

c gcc freetype freetype2
1个回答
0
投票

它似乎并不实际存在。我使用我自己的函数,叫做 ftstrerror,做一些同等的事情。

static const char *ftstrerror(FT_Error error)
{
#undef FTERRORS_H_
#define FT_ERRORDEF(error_code, value, string) case error_code: return string;
#define FT_ERROR_START_LIST switch(error) {
#define FT_ERROR_END_LIST default: return "Unknown error"; }
#include FT_ERRORS_H
}
© www.soinside.com 2019 - 2024. All rights reserved.