Jump to content

  • Log In with Google      Sign In   
  • Create Account

FREE SOFTWARE GIVEAWAY

We have 4 x Pro Licences (valued at $59 each) for 2d modular animation software Spriter to give away in this Thursday's GDNet Direct email newsletter.


Read more in this forum topic or make sure you're signed up (from the right-hand sidebar on the homepage) and read Thursday's newsletter to get in the running!


UES when compiling NeHe's 1st tutorial


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
2 replies to this topic

#1 reaptide   Members   -  Reputation: 226

Like
Likes
Like

Posted 07 April 2000 - 10:26 AM

Hello everyone, I just started NeHe's first OpenGl tutorial and am having a problem when compiling. I get an Unresolved External symbol whenever compiling. Included below is the error and code. Error: LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16 Debug/OpenGL.exe : fatal error LNK1120: 1 unresolved externals // START CODE ////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////// // Main.cpp: // Run-Time Entrance ///////////////////////////////////////////////////////////////////// // INCLUDES ///////////////////////////////////////////////////////// #include "windows.h" #include "windowsx.h" #include "gl\gl.h" #include "gl\glu.h" #include "gl\glaux.h" // GLOBALS ////////////////////////////////////////////////////////// HDC hDC; // Handle to a Device Context HGLRC hRC; // Handle to a Rendering Context HWND hWnd; // Handle to a window bool keys[256]; // Array used for the keyboard function bool active = TRUE; // Windows active flag bool fullscreen = TRUE; // Fullscreen flag // PROTOTYPES /////////////////////////////////////////////////////// LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); // FUNCTIONS //////////////////////////////////////////////////////// // Resize and initialize the GL window GLvoid ResizeGLScene(GLsizei width, GLsizei height) { if (height == 0) // Prevent a divide by zero by height = 1; // making height equal to one glViewport(0, 0, width, height); // Reset current viewport glMatrixMode(GL_PROJECTION); // Select the projection matrix glLoadIdentity(); // Reset projection matrix // Calculate the aspect ratio of the window gluPerspective(45.0f, (GLfloat)width / (GLfloat)height ,0.1f ,100.0f); glMatrixMode(GL_MODELVIEW); // Select the Modelview Matrix glLoadIdentity(); // Reset projection maxtrix } ///////////////////////////////////////////////////////////////////// // Initialize OpenGl int InitGL(GLvoid) { glShadeModel(GL_SMOOTH); // Enables smooth shading glClearColor(0.0f, 0.0f, 0.0f, 0.0f); // Color to clear to (black) glClearDepth(1.0); // Depth buffer setup glEnable(GL_DEPTH_TEST); // Enable depth testing glDepthFunc(GL_LEQUAL); // Depth test to do // Give a really nice perspective calculations glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); return TRUE; } ///////////////////////////////////////////////////////////////////// // Do all the drawing here int DrawGLScene(GLvoid) { // Clear the screen and add the depth buffer glClear(GL_COLOR_BUFFER_BIT / GL_DEPTH_BUFFER_BIT); glLoadIdentity(); // Reset Matrix return TRUE; } ///////////////////////////////////////////////////////////////////// // Properly destroy the window GLvoid KillGLWindow(GLvoid) { if (fullscreen) // Are we in fullscreen mode? { ChangeDisplaySettings(NULL, 0); // If so, switch to window ShowCursor(TRUE); // Show mouse pointer } if (hRC) { if (!wglMakeCurrent(NULL, NULL)) // Can we release DC and RC { MessageBox(NULL, "Release of DC and RC Failed.", "Shutdown Error", MB_OK / MB_ICONINFORMATION); } if (!wglDeleteContext(hRC)) { MessageBox(NULL, "Release of rendering context failed.", "Shutdown Error", MB_OK / MB_ICONINFORMATION); } hRC = NULL; } if (hDC && ReleaseDC(hWnd, hDC)) { MessageBox(NULL, "Release of hDC failed.", "Shutdown Error", MB_OK / MB_ICONINFORMATION); hDC = NULL; } if (hWnd && !DestroyWindow(hWnd)) { MessageBox(NULL, "Could not destroy active window.", "Shutdown Error", MB_OK / MB_ICONINFORMATION); hWnd = NULL; } } // END CODE //////////////////////////////////////////////// Anyone have a clue why this is happening? Edited by - Reaptide on 4/7/00 4:28:31 PM

Sponsor:

#2 Demon Lord   Members   -  Reputation: 122

Like
Likes
Like

Posted 07 April 2000 - 11:33 AM

You probably are using a Windowed application instead of a console one (or vice versa). Check that.

#3 SiCrane   Moderators   -  Reputation: 9674

Like
Likes
Like

Posted 07 April 2000 - 11:38 AM

You aren''t supplying an entry point for your code. When compiling for Windows you need either a main or a WinMain function (depending on if it''s a console or windows applicaiton). In this case you need to create a WinMain function that will initialize your windows, setup callback functions, etc. If you were just following along rather than downloading the tutorial, his WinMain is specified about 90% down the page.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS