我正在使用 DevIL 编写一个 C++ OpenGL 项目,并且在尝试确定如何加载图像以用作纹理时遇到编译时错误。
到目前为止我有这个
//Declarations
const char* filename = "back.bmp";
ILboolean ilLoadImage(const char *filename);
ILuint image;
ilGenImages(1, &image);
ilBindImage(image);
//Load the image
if (!ilLoadImage(filename))
{
throw runtime_error("Unable to load image" +filename);
}
这给我带来了错误:error C2110: '+' : cannot add two pointers
如果我将filename
to的声明string filename = "back.bmp";
和 if 语句更改为
if (!ilLoadImage(const_cast<char*>(filename.c_str())))
我收到此链接器错误error LNK1104: cannot open file 'DevIL.libkernel32.lib'
我确定我已将所有 DevIL 文件放在需要的位置,并在 Project->Properties->Linker->Input->Additional Dependencies 中添加了依赖项。