【发布时间】:2017-04-23 08:40:29
【问题描述】:
注意:是的,我指定了 GLEW_STATIC。
所以在尝试设置 glew 以用于新项目之前,我已经通过了这个圈地,但现在我在项目中使用 glew 2.0,它会产生链接错误。我刚刚在一个 linux 实例中生成了源代码并像这样使用它们。
#include "Renderer.h"
#include <windows.h>
#include "GL/glew.h"
#include "Logger.h"
void Renderer::init(void* windowHandle) {
Logger logger("Renderer::init");
GLenum result = glewInit();
if (result != GLEW_OK) {
LOG(logger) << "Failed to run glew init with error: " << result;
}
}
这是我在命名空间渲染器中声明并在此处定义的函数。相关的是我只打电话给glewInit(),就是这样。
产生的链接错误是:
Error LNK2019 unresolved external symbol __imp_glGetIntegerv referenced in function glewContextInit
Error LNK2019 unresolved external symbol __imp_glGetString referenced in function glewContextInit
Error LNK2019 unresolved external symbol __imp_wglGetCurrentDC referenced in function wglewInit
Error LNK2019 unresolved external symbol __imp_wglGetProcAddress referenced in function wglewInit
这里与正常的“未定义声明的函数”类型的错误之间的区别,这四个是唯一缺少的。由于他们附加了 __imp_ 标记,通常表明他们期望动态库链接,所以有些东西告诉我他们可能是生成的文件中的错误?有人在链接 glew 时遇到过这个问题吗?
【问题讨论】:
标签: c++ windows opengl visual-studio-2015 glew