2016-05-21 5 views
-4

Ich versuche, diese simple program zu kompilieren.Kann nicht kompilieren eine C++ Datei mit OpenGL-Bibliothek unter Mac OS mit Xcode und Terminal

Aber jedes Mal, wenn ich versuche, es mit Xcode oder dem Terminal zu tun, bekomme ich diese warnings and errors.

+0

Was ist eine "g ++ Datei"? –

+0

auch, was ist mit der Eingabe von Bildbeschreibungen? –

+0

auch, entfernt die "kthxbai!" Schlusswort; Mach dir keine Sorgen, es macht uns nichts aus, aber sie sind auf SO veraltet, weil * jeder * um Hilfe bittet, also zu sagen "hoffe, du kannst mir helfen" ist wirklich überflüssig. –

Antwort

2

Zunächst einmal, was soll eine "g ++" Datei bedeuten?

  • g ++ ist ein Befehl, der einen GNU C++ - Compiler aufruft.
  • C++ - Compiler sind da, um C++ - Code zu kompilieren.
  • OpenGL ist eine Plain-C-API, und das ist auch Ihr Code.
  • C++ Compiler ist für die Erstellung von C-Code nicht gemeint, obwohl sie (mit einigen "buts")

ausprobieren und Abbildung des folgenden Funktion display():

  • warum ist die Linie glClear(GL_POLYGON)falsch?

ersten drei Linie display() sollte der folgende Syntax sein:

//glClear(GL_POLYGON); //this is meaningless ! 
glClearColor(0.,0.,0., 1.); 
glClear(GL_COLOR_BUFFER_BIT); 
glColor4f(.1,.2,.3, 1.); 

Wenn Sie es in Linux kompilieren müssen Sie mindestens libGL verknüpfen, in OSX den entsprechenden Rahmen: -framework opengl, in Windows müssen Sie link opengl32

Zusätzlich zu OpenGL hängt Ihr Programm auch von GLUT ab, also müssen Sie auch darauf verlinken.

Veraltet bedeutet nicht im Ruhestand.

Viel Spaß beim Lernen von OpenGL!

+0

Danke für deine Bearbeitung und deine Zeit nehmen, @datenwolf (-: – user3078414

+0

Ok Entschuldigung für die Probleme mit meiner Frage, ich bin nicht sehr zu programmieren, aber ich versuche OpenGL für ein Projekt zu lernen. –

+0

Aber die Sache ist was ich zu korrigieren tun, um erfolgreich die Fehler im Programm sollte? ich meine, ich kann einfach keine Fehler auf sie sehen. ich bin mit erhaben und versuche, auf dem Terminal # include Leere display() { glClear auszuführen (GL_POLYGON); glBegin (GL_POLYGON); glVertex2f (-0,5, -0,5); glVertex2f (-0.5,0.5); glVertex2f (0.5,0.5); glVertex2f (0,5, -0.5); glEnd(); glFlush(); } int main (int argc, char ** argv) { glutInit (& argc, argv); glutCreateWindow ("einfach"); glutDisplayFunc (Anzeige); glutMainLoop(); } –

Verwandte Themen