仅使用源文件包括glew?

3

由于我无法理解的原因,当静态链接时,glew将无法正常工作。是否有一种方法可以将glew.h、glxew.h、wglew.h和glew.c源文件简单地包含到我的项目中并使用呢?

#include "glew.h"

替代

#include <glew.h>

每当我尝试时,就会出现一堆警告信息,例如:
warning C4273: '__WGLEW_NV_render_depth_texture' : inconsistent dll linkage

如果您正在使用gcc,请将glew路径添加到-I选项中:-I/path/to/glew - Chris
2个回答

12

你看过GLEW的安装/构建页面了吗?

http://glew.sourceforge.net/install.html

如果你正在静态地构建它(听起来像是这样),在包含glew.h之前需要定义GLEW_STATIC宏(否则它将无法编译)。最简单的方法是向你的项目添加一个选项;或者,如果你很固执,可以这样做:

 #define GLEW_STATIC
 #include "glew.h"

3

从GLEW 安装页面中得知:

在Windows平台上,如果要构建静态库或可执行文件,需要定义GLEW_STATIC预处理器标记;如果要构建动态链接库,则需要定义GLEW_BUILD预处理器标记。此外,在代码中需要将<GL/glew.h>和<GL/wglew.h>替换为<GL/glew.h>和<GL/gl.h>。还需要设置适当的包含标志(-I)来告诉编译器它们的位置。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接