【发布时间】:2013-09-19 14:11:29
【问题描述】:
一天前我安装了一个 SDL2 库。它还没有在 Debian Wheezy 中,所以我使用了configure, make, make install 命令。
毕竟,当我尝试使用 SDL_Texture 时,我得到了这个错误:
error: forward declaration of ‘SDL_Texture {aka struct SDL_Texture}’
invalid use of incomplete type ‘SDL_Texture {aka struct SDL_Texture}’
查找声明后,我发现的都是SDL_render.h中的这两行:
struct SDL_Texture;
typedef struct SDL_Texture SDL_Texture;
根本没有定义。我认为我的安装缺少文件 SDL_sysrender.h。它在我下载的源代码中,但不在 SDL2 包含路径中。
问题应该出在哪里?有必要对配置文件使用任何标志吗? 谢谢你的帮助。
【问题讨论】:
-
你包括哪些标题?听起来其中一个 SDL 类标头具有前向声明,但该类的实际类标头未包含在某处,因此,您的类定义不完整。我不知道如果你调用一个找不到的头文件会发生什么,我猜你会得到一个链接器错误而不是这个错误。
-
我目前只包含 SDL_render.h。我会尝试使用 SDL.h 看看会发生什么
-
即使使用 SDL.h,问题仍然存在。