2010-02-07 12 views
0

J'essaie de compiler ce programme C++ qui utilise les bibliothèques GLUT32.Comment puis-je résoudre les problèmes de l'éditeur de liens lorsque je compile ce programme C++ qui nécessite GLUT?

En ce moment, je reçois les erreurs suivantes:

erreur 1 erreur LNK2001: symbole externe non résolu _gluPerspective @ 32 Camera.obj Soundcube erreur Erreur 2 LNK2001: symbole externe non résolu _gluLookAt @ 72 Camera.obj Soundcube erreur 3 erreur LNK2001: symbole externe non résolu __imp__glMaterialfv @ 12 GLWindow.obj Soundcube erreur 4 erreur LNK2001: symbole externe non résolu __imp__glClear @ 4 GLWindow.obj Soundcube Erreur 5 erreur LNK2001: symbole externe non résolu __imp__glClearColor @ 16 GLWindow.obj Soundcube Erreur 6 erreur LNK2001: symbole externe non résolu __imp__glMaterialf @ 12 GLWindow.obj Soundcube Erreur 7 erreur LNK2001: symbole externe non résolu __imp__glEnd @ 0 GLWindow.obj Soundcube erreur 8 erreur LNK2001: symbole externe non résolu __imp__glRasterPos2f @ 8 GLWindow.obj Soundcube erreur 9 erreur LNK2001: symbole externe non résolu __imp__timeGetTime @ 0 GLWindow.obj Soundcube erreur 10 erreur LNK2001: non résolus symbole extérieur __imp_ _glDisable @ 4 GLWindow.obj Soundcube erreur 11 Erreur LNK2001: symbole externe non résolu __imp__glBegin @ 4 GLWindow.obj Soundcube erreur 12 Erreur LNK2001: symbole externe non résolu __imp__glColor4f @ 16 GLWindow.obj Soundcube erreur 13 Erreur LNK2001: non résolus symbole externe __imp__glPopMatrix @ 0 GLWindow.obj Soundcube erreur 14 erreur LNK2001: symbole externe non résolu __imp__glPushMatrix @ 0 GLWindow.obj Soundcube erreur 15 erreur LNK2001: symbole externe non résolu __imp__glRotatef @ 16 GLWindow.obj Soundcube erreur 16 erreur LNK2001: non résolu sy externe mbol __imp__glBlendFunc @ 8

...

Erreur 56 LNK1120 erreur fatale: 55 non résolue C externals: \ Users \ Simucal \ Documents \ Téléchargements \ SoundCubeSrc Soundcube

Je ne suis pas expérimenté en C++ mais j'ai essayé de configurer GLUT correctement afin que ce projet puisse s'y lier.

J'ai téléchargé la bibliothèque GLUT32 pour Nate Robin's page.

je puis placé les fichiers suivants dans:

  • glut.h - C: \ Program Files \ Microsoft SDKs \ Windows \ v6.0A \ Include \ gl
  • glut32.lib - C: \ Fichiers programme \ Microsoft SDK \ Windows \ v6.0A \ Lib
  • glut.dll - C: \ Windows \ System32

J'ai aussi choisi le Projet -> Propriétés -> Linker -> -> Dépendances supplémentaires Ajouté "glut32.lib"

Si quelqu'un veut voir quel projet je Je travaille avec, c'est here.

Quelle étape est-ce que je manque ou fais mal pour résoudre ces erreurs?

Répondre

4

Les symboles non résolus sont de les bibliothèques GL et GLU. Vous devez également ajouter les bibliothèques de liens pour eux.

1

il me semble que vous mélangez des options de liens statiques et dynamiques. Je télécharge votre projet pour enquêter, mais quel type de compilation faites-vous?

Je ne vois pas une référence à la surabondance .lib fichier dans le projet ...

J'ai ajouté la référence de la bibliothèque et des chemins LIB/Include:

diff --git a/soundCube/soundCube.vcproj b/soundCube/soundCube.vcproj 
index 62e04c1..b71eb20 100644 
--- a/soundCube/soundCube.vcproj 
+++ b/soundCube/soundCube.vcproj 
@@ -41,6 +41,7 @@ 
      <Tool 
       Name="VCCLCompilerTool" 
       Optimization="0" 
+    AdditionalIncludeDirectories="d:\temp\glut" 
       PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" 
       MinimalRebuild="true" 
       BasicRuntimeChecks="3" 
@@ -60,7 +61,9 @@ 
      /> 
      <Tool 
       Name="VCLinkerTool" 
+    AdditionalDependencies="glut32.lib" 
       LinkIncremental="2" 
+    AdditionalLibraryDirectories="d:\temp\glut\GL" 
       GenerateDebugInformation="true" 
       SubSystem="1" 
       TargetMachine="1" 
@@ -114,6 +117,7 @@ 
       Name="VCCLCompilerTool" 
       Optimization="2" 
       EnableIntrinsicFunctions="true" 
+    AdditionalIncludeDirectories="d:\temp\glut" 
       PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" 
       RuntimeLibrary="0" 
       EnableFunctionLevelLinking="true" 
@@ -132,7 +136,9 @@ 
      /> 
      <Tool 
       Name="VCLinkerTool" 
+    AdditionalDependencies="glut32.lib" 
       LinkIncremental="1" 
+    AdditionalLibraryDirectories="d:\temp\glut\GL" 
       GenerateDebugInformation="true" 
       SubSystem="1" 
       OptimizeReferences="2" 
+0

Je travaille sur un projet transmis par un étudiant japonais qui n'est plus à l'université. C'est sa partie. Je ne suis pas entièrement sûr. Si vous voyez quelque chose qui pourrait être utile lorsque vous regardez le projet, je l'apprécierais! – mmcdole