2011-10-09 118 views
3

我正在使用Visual Studio C++和GLEW。項目設置全部設置(包括/ Libs)。OpenGL編譯問題

MenuState.obj : error LNK2001: unresolved external symbol __imp____glewUseProgramObjectARB 
MenuState.obj : error LNK2001: unresolved external symbol __imp____glewLinkProgramARB 
MenuState.obj : error LNK2001: unresolved external symbol __imp____glewAttachObjectARB 
MenuState.obj : error LNK2001: unresolved external symbol __imp____glewCompileShader 
MenuState.obj : error LNK2001: unresolved external symbol __imp____glewShaderSource 
MenuState.obj : error LNK2001: unresolved external symbol __imp____glewCreateShader 
MenuState.obj : error LNK2001: unresolved external symbol __imp____glewCreateProgramObjectARB 

這些是我得到的唯一消息。一切工作正常,直到我試圖實現一個着色器。 問題是我在虛擬機內工作,所以我的問題是:GLEW是否需要opengl32.lib作爲依賴項?因爲如果我不添加opengl32.lib到鏈接器,我會得到更多的錯誤。如果可以的話,這個問題是由opengl32.lib引起的?因爲我認爲opengl32.lib是標準的windows opengl32.lib,這意味着它只是opengl 1.1,因此它不能鏈接...

那麼這些錯誤的問題是什麼?

+2

您需要鏈接到glew庫。你在做那個嗎? –

+0

@icktoofay什麼是'glue32.lib'? –

+0

@Christian:對不起,我打錯了。我正在考慮如何發音'glew',並且我意外地輸入了它。 – icktoofay

回答

1

確保在將GLEW包括在Windows中之前,在項目中定義GLEW_STATIC。然後,您可以將整個源代碼包含在項目文件中。否則,您需要在您的可執行文件中包含正確的GLEW DLL文件。