我使用的每个 glew 函数的未解析外部符号
Unresolved external symbol for every glew function I use
我想在 64 bit
中创建新的 OpenGl/GLEW/GLFW Visual Studio 项目。所以我下载了 glew 二进制文件和 glfw 二进制文件。我的项目设置如下:
其他库:
- glew-2.1.0\lib\Release\x64
- glfw-3.3.bin.WIN64\lib-vc2019
附加依赖项:
- glew32s.lib(我不明白为什么它被命名为 glew32 并且在 x64 文件夹中)
- opengl32.lib
- glfw3.lib
通过对每个 glew 函数(如 glGenBuffers
或 glUseProgram
或任何东西进行这样的设置,我得到 LNK2001 未解析的外部符号错误。
有什么线索是我哪里做错了吗?
(因为我是所有这些的新手,有人可以解释为什么我必须在 64 位应用程序上 link opengl32.lib 以及为什么没有 opengl64.lib 等等上?)
好吧,当我 link 它是动态的(glew32.lib 而不是 glew32s.lib 时,它似乎工作正常)。
仍然不知道为什么 static linkeng 没有解决。
如果您想 link windows 上的静态 glew 库,那么您必须在编译应用程序时定义 GLEW_STATIC
预处理器定义。
参见 Building Your Project with GLEW
和 .
如果您使用 gnu (g++),则只需在构建命令中添加 -D GLEW_STATIC
。
在 Visual Studio 中,将 GLEW_STATIC
添加到 项目属性 -> C/C++ -> 预处理器 -> 预处理器定义
我想在 64 bit
中创建新的 OpenGl/GLEW/GLFW Visual Studio 项目。所以我下载了 glew 二进制文件和 glfw 二进制文件。我的项目设置如下:
其他库:
- glew-2.1.0\lib\Release\x64
- glfw-3.3.bin.WIN64\lib-vc2019
附加依赖项:
- glew32s.lib(我不明白为什么它被命名为 glew32 并且在 x64 文件夹中)
- opengl32.lib
- glfw3.lib
通过对每个 glew 函数(如 glGenBuffers
或 glUseProgram
或任何东西进行这样的设置,我得到 LNK2001 未解析的外部符号错误。
有什么线索是我哪里做错了吗?
(因为我是所有这些的新手,有人可以解释为什么我必须在 64 位应用程序上 link opengl32.lib 以及为什么没有 opengl64.lib 等等上?)
好吧,当我 link 它是动态的(glew32.lib 而不是 glew32s.lib 时,它似乎工作正常)。 仍然不知道为什么 static linkeng 没有解决。
如果您想 link windows 上的静态 glew 库,那么您必须在编译应用程序时定义 GLEW_STATIC
预处理器定义。
参见 Building Your Project with GLEW
和
如果您使用 gnu (g++),则只需在构建命令中添加 -D GLEW_STATIC
。
在 Visual Studio 中,将 GLEW_STATIC
添加到 项目属性 -> C/C++ -> 预处理器 -> 预处理器定义