我正在按照红皮书学习OpenGL.当我到第90页左右时,我需要使用glGenBuffers(); 然后我需要安装"glew".按照www.cs.uiowa.edu/~cwyman/classes/common/howto/winGLUT.html中的步骤操作
我下载glew.zip的glew.sourceforge.net/,并解压缩文件.
我放
glew.h 在 C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Includeglew32.lib在C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib,和glew32.dll 在 C:\Windows\System32之后,我在VS 2010中构建我的项目,并在其中Linker->input添加依赖项glew32.lib.
但是当我构建它时,我有错误
unresolved external symbol __imp__glewInit
我花了一整天时间来搜索解决方案,但没有找到解决方案.
希望有人可以帮助我.
我已经尝试了几种方法让GLEW使用我的VS2010项目.没有成功.起初我尝试使用网站上预先构建的库和dll.我从http://glew.sourceforge.net/index.html下载了这些预先构建的文件并做了类似的事情:设置GLEW窗口?
.h文件放在C:\ Program Files(x86)\ Microsoft SDKs\Windows\v7.0A\Include中
.lib文件放在C:\ Program Files(x86)\ Microsoft SDKs\Windows\v7.0A\Lib\x64中(我还将它们放在一级以防万一)
glew32.dll转到C:\ Windows\SysWOW64
linker-> input将glew32.lib,GlU32.lib和OpenGL32.lib添加到其他依赖项
预处理器定义:放入GLEW_BUILD和GLEW_STATIC(我的程序需要是一个DLL,但其他似乎与STATIC成功,所以我包括两者)
当我使用这些设置运行程序时,glewInit()不是那么GLEW_OK.即使glewInit()失败,它仍然会奇怪地识别该函数.当我使用另一个glew函数,如"glCreateProgram()"时,我收到以下错误:
Error 56 error LNK2020: unresolved token (0A000327) __glewCreateProgram
C:\Users\aab\studyWrist\Visualization\libCoin3D\ShaderHandler.obj libCoin3D
Error 57 error LNK2001: unresolved external symbol __glewCreateProgram
C:\Users\aab\studyWrist\Visualization\libCoin3D\ShaderHandler.obj libCoin3D
Error 58 error LNK1120: 2 unresolved externals
C:\Users\aab\studyWrist\Visualization\libCoin3D\Debug\libCoin3D.dll libCoin3D
Run Code Online (Sandbox Code Playgroud)
所以,关于stackoverflow的一些其他建议是重建glew.接下来我尝试在VS2010中构建glew32d.我关注OpenGL:如何从源文件编译glew32.dll并得到glew32d.dll和glew32d.lib.
glew32d.lib放入C:\ Program Files(x86)\ Microsoft SDKs\Windows\v7.0A\Lib\x64(如果我把它放在x64文件夹中,程序只识别lib,而不是升级)
glew32d.dll转到C:\ Windows\SysWOW64
链接器 - >输入添加glew32d.lib(这个已更改),GlU32.lib和OpenGL32.lib添加到其他依赖项
预处理器定义:放入GLEW_BUILD和GLEW_STATIC
我的以下错误仅由glewInit引起:
Error 56 error LNK2028: unresolved token (0A000383) "extern "C" unsigned int
__cdecl glewInit(void)" (?glewInit@@$$J0YAIXZ) referenced in …Run Code Online (Sandbox Code Playgroud)