在我的程序的顶部,我有
#include "SDL/SDL_image.h"
当我尝试使用SDL_image的一个函数进行编译时,它会说
load_image()
未在此范围内声明。我可以做些什么来确保一切设置正确?
我已将其包含在我的链接器设置中。
答案 0 :(得分:0)
错误消息来自编译器,而不是链接器。因此,您的链接器设置没有任何区别。
如果你绝对无能为力,你可以要求编译器(预处理器)生成它试图编译的预处理代码。 (相关的gcc选项是-save-temps
)这样你可以看到是否真的声明了load_image
。也许条件编译选项是排除声明,或者找不到某些包含文件而您错过了错误消息。
此外,如果您正在编译C ++代码(我假设您是这样),那么SDL内容应该包含在extern C
块中(尽管我认为这会导致链接器错误)。但是,这些可能已包含在SDL标头中。
如果所有其他方法都失败了,请将预处理的输出上传到某处,以便我们查看。
编辑:根据SDL Image v1.2 documentation,图像加载器功能实际上被称为IMG_Load
,我没有看到load_image
。