2012-07-23 79 views
6

我使用VC++ 2010来处理一些OpenGL。然而,这成为一种痛苦。我不断地收到错误代码。GLFW VC++ LNK错误

这里是我一起工作的代码:

// Include standard headers 
#include <stdio.h> 
#include <stdlib.h> 


// Include GLEW 
#include <GL/glew.h> 

// Include GLFW 
#include <GL/glfw.h> 


// Include GLM 
#include <glm/glm.hpp> 
using namespace glm; 
int main(void){   
    // Initialise GLFW 
    if(!glfwInit()){ 

      fprintf(stderr, "Failed to initialize GLFW\n"); 
      return -1; 
    } 

    glfwOpenWindowHint(GLFW_FSAA_SAMPLES, 4); 
    glfwOpenWindowHint(GLFW_OPENGL_VERSION_MAJOR, 3); 
    glfwOpenWindowHint(GLFW_OPENGL_VERSION_MINOR, 3); 
    glfwOpenWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); 

    // Open a window and create its OpenGL context 
    if(!glfwOpenWindow(1024, 768, 0,0,0,0, 32,0, GLFW_WINDOW)) 
    { 
      fprintf(stderr, "Failed to open GLFW window. If you have an Intel GPU, they are not 3.3 compatible. Try the 2.1 version of the tutorials.\n"); 
      glfwTerminate(); 
      return -1; 
    } 

    // Initialize GLEW 
    if (glewInit() != GLEW_OK) { 
      fprintf(stderr, "Failed to initialize GLEW\n"); 
      return -1; 
    } 

    glfwSetWindowTitle("Tutorial 01"); 

    // Ensure we can capture the escape key being pressed below 
    glfwEnable(GLFW_STICKY_KEYS); 

    // Dark blue background 
    glClearColor(0.0f, 0.0f, 0.3f, 0.0f); 

    do{ 
     // Draw nothing, see you in tutorial 2 ! 

     // Swap buffers 
     glfwSwapBuffers(); 

    } // Check if the ESC key was pressed or the window was closed 
    while(glfwGetKey(GLFW_KEY_ESC) != GLFW_PRESS && 
     glfwGetWindowParam(GLFW_OPENED)); 

// Close OpenGL window and terminate GLFW 
    glfwTerminate(); 
    return 0; 
} 

下面是我收到的错误:

Error 52 error LNK1120: 10 unresolved externals C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\Debug\OpenGL Fun.exe OpenGL Fun 
Error 42 error LNK2001: unresolved external symbol [email protected] C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(win32_window.obj) OpenGL Fun 
Error 39 error LNK2001: unresolved external symbol [email protected] C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(win32_window.obj) OpenGL Fun 
Error 50 error LNK2001: unresolved external symbol [email protected] C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(glext.obj) OpenGL Fun 
Error 45 error LNK2001: unresolved external symbol [email protected] C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(win32_glext.obj) OpenGL Fun 
Error 41 error LNK2019: unresolved external symbol [email protected] referenced in function _glfwOpenWindow C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(window.obj) OpenGL Fun 
Error 38 error LNK2019: unresolved external symbol [email protected] referenced in function _main C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\Main.obj OpenGL Fun 
Error 40 error LNK2019: unresolved external symbol [email protected] referenced in function _main C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\Main.obj OpenGL Fun 
Error 48 error LNK2019: unresolved external symbol [email protected] referenced in function __glfwPlatformSetWindowSize C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(win32_window.obj) OpenGL Fun 
Error 49 error LNK2019: unresolved external symbol [email protected] referenced in function __glfwPlatformSetWindowSize C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(win32_window.obj) OpenGL Fun 
Error 51 error LNK2019: unresolved external symbol [email protected] referenced in function __glfwParseGLVersion C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(glext.obj) OpenGL Fun 
Error 43 error LNK2019: unresolved external symbol [email protected] referenced in function _createContext C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(win32_window.obj) OpenGL Fun 
Error 47 error LNK2019: unresolved external symbol [email protected] referenced in function _destroyWindow C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(win32_window.obj) OpenGL Fun 
Error 44 error LNK2019: unresolved external symbol [email protected] referenced in function _initWGLExtensions C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(win32_window.obj) OpenGL Fun 
Error 46 error LNK2019: unresolved external symbol [email protected] referenced in function _createWindow C:\Users\Chefomsky\documents\visual studio 2010\Projects\OpenGL Fun\OpenGL Fun\GLFW.lib(win32_window.obj) OpenGL Fun 

回答

10

在Solution Explorer中,右键单击您的项目,并选择properties。从配置列表框中选择“所有配置”。在左侧窗格中,选择Linker子树,然后选择input选项。在“其他依赖项”下添加opengl32.lib

+0

我窗台得到了一些错误,错误错误LNK1120:1周无法解析的外部\t C:\用户\ Chefomsky \文档\ Visual Studio 2010的\项目\ OpenGL的乐趣\调试\ OpenGL的Fun.exe OpenGL FunError 错误LNK2019:无法解析的外部符号__imp__glewInit @ 0在函数中引用_main \t C:\ Users \ Chefomsky \ documents \ visual studio 2010 \ Projects \ OpenGL Fun \ OpenGL Fun \ Main.obj \t OpenGL Fun – NateAGeek 2012-07-23 09:01:23

+0

@ NathanHatch- Martinez:对于LNK1120错误,请参阅[此链接](http://stackoverflow.com/a/7410844/716076)。对于LNK2019,我推荐[此链接](http://msdn.microsoft.com/en-us/library/799kze2z%28v=vs.80%29.aspx)。 – 2012-07-23 13:49:53

+0

好的,注意:我使用了错误的库...谢谢你的帮助。 – NateAGeek 2012-07-23 20:22:55