加载 TTF 时出现分段错误 - SDL2

Segmentation Fault while loading TTF - SDL2

我基本上遇到了这个用户在这里遇到的相同 "original" 问题:C++ SDL segmentation fault .

但是,即使在安装了我尝试使用的字体之后,我仍然会在 运行 程序时遇到分段错误。

我使用 gdb 进行调试,它 returns 具有:

TTF_SizeUNICODE (font=font@entry=0x0, text=text@entry=0xbfffefe0, w=w@entry=0xbfffef9c, h=h@entry=0xbfffefa0) at SDL_ttf.c:1127
1127        use_kerning = FT_HAS_KERNING( font->face ) && font->kerning;

这是我加载 TTF 字体的方式:

TTF_Font *font;
TTF_Init();
font = TTF_OpenFont("/includes/game_over.ttf",30);

对这意味着什么有什么想法吗?

字体为空,因为 TTF_OpenFont 无法打开该字体。在 TTF_OpenFont 之后添加此行以查看问题所在(例如文件丢失?权限不足等)或者您的意思是 includes/game_over.ttf 而不是 /includes/game_over.ttf 指向根文件夹?

if(!font) {
    printf("TTF_OpenFont: %s\n", TTF_GetError());
}