Eclipse Hands-On
Transcription
Eclipse Hands-On
Computergrafik 1 Übung, Wintersemester 2011 „Eclipse Hands-On“ C++ Projektsetup mit OpenGL und GLUT unter Eclipse für Windows 22.10.12 1 Eclipse - Die IDE 1. Entwicklungsumgebung (IDE) herunterladen / installieren 2. Compiler (wenn nicht in die IDE integriert) herunterladen / installieren / der IDE sagen, wo sie den Compiler auf deiner Festplatte findet 3. Bibliotheken herunterladen / entpacken / Ordnerpfade merken 4. Entwicklungsumgebung starten und neues Projekt erstellen 5. Ordnerpfade auf deiner Festplatte angeben, wo sich die Header (*.h) der Bibliotheken befinden, die du benutzen willst 6. Dazu passende Ordnerpfade für vorkompilierte Bibliotheken (*.lib / *.a) angeben 7. Dem Linker sagen, welche Dateien genau er aus diesen Ordnerpfaden benutzen soll 8. Eigene *.cpp Datei mit main-Funktion erstellen 9. Programm schreiben 10. Header includen (#include "glut.h") 11. Compiler starten 12. Programm ausführen und testen 22.10.12 2 Eclipse - Die IDE Eclipse ist eine Entwicklungsumgebung,... … für unter anderem Linux, Windows und MacOS … die ursprünglich für Java entwickelt wurde … mit Erweiterungen für unzählige Programmiersprachen (inkl. C++) 22.10.12 3 Eclipse – IDE Download Eclipse steht kostenlos zum Download bereit http://www.eclipse.org/downloads/ Braucht nur entpackt werden Um Eclipse mit C++ startklar zu machen, gibt es 2 Möglichkeiten: Direkt die „Eclipse IDE for C/C++ Developers“ herunterladen Oder nachträglich „C/C++ Development Tools“ installieren Hauptmenü „Help“ > „Install new software“ Unter „Work with:“ „[Version] – http://[...]“ selektieren und warten (ziemlich buggy) Unter „Programming Languages“ „C/C++ Development Tools“ installieren 22.10.12 4 Eclipse 1. Entwicklungsumgebung (IDE) herunterladen / installieren 2. Compiler (wenn nicht in die IDE integriert) herunterladen / installieren / der IDE sagen, wo sie den Compiler auf deiner Festplatte findet 3. Bibliotheken herunterladen / entpacken / Ordnerpfade merken 4. Entwicklungsumgebung starten und neues Projekt erstellen 5. Ordnerpfade auf deiner Festplatte angeben, wo sich die Header (*.h) der Bibliotheken befinden, die du benutzen willst 6. Dazu passende Ordnerpfade für vorkompilierte Bibliotheken (*.lib / *.a) angeben 7. Dem Linker sagen, welche Dateien genau er aus diesen Ordnerpfaden benutzen soll 8. Eigene *.cpp Datei mit main-Funktion erstellen 9. Programm schreiben 10. Header includen (#include "glut.h") 11. Compiler starten 12. Programm ausführen und testen 22.10.12 5 Eclipse – Der Compiler Eclipse für C++ hat keinen Compiler integriert ... … kennt aber Toolchains für die gängigsten C++ Compiler Darum installieren wir MinGW http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer/ Anschließend muss manuell das /bin/ Verzeichnis mit den ausführbaren Dateien in PATH hinzugefügt werden (siehe letzte 3 Folien „Kleiner Exkurs zu Windows Umgebungsvariablen“) Jetzt kann Eclipse den Compiler finden und verwenden! :-) 22.10.12 6 Eclipse 1. Entwicklungsumgebung (IDE) herunterladen / installieren 2. Compiler (wenn nicht in die IDE integriert) herunterladen / installieren / der IDE sagen, wo sie den Compiler auf deiner Festplatte findet 3. Bibliotheken herunterladen / entpacken / Ordnerpfade merken 4. Entwicklungsumgebung starten und neues Projekt erstellen 5. Ordnerpfade auf deiner Festplatte angeben, wo sich die Header (*.h) der Bibliotheken befinden, die du benutzen willst 6. Dazu passende Ordnerpfade für vorkompilierte Bibliotheken (*.lib / *.a) angeben 7. Dem Linker sagen, welche Dateien genau er aus diesen Ordnerpfaden benutzen soll 8. Eigene *.cpp Datei mit main-Funktion erstellen 9. Programm schreiben 10. Header includen (#include "glut.h") 11. Compiler starten 12. Programm ausführen und testen 22.10.12 7 Eclipse – GLUT Download Als nächstes laden wir eine GLUT implementierung herunter Zu finden unter http://www.xmission.com/~nate/glut.html Entweder vorkompilierter Binärcode glut-3.7.6-bin.zip (117 KB) oder mit Sourcecode zum selber kompilieren (nicht nötig) glut-3.7.6-src.zip (4.76 MB) 22.10.12 8 Eclipse – GLUT entpacken Aber wohin entpacken? Geschmackssache beim Workspace: Für alle Libraries und Projekte könnte man ein gemeinsames Oberverzeichnis anlegen Am besten an einem einfachen Pfad z.B. C:/SDK/ oder D:/Develop/ oder E:/Libraries/ Ich verwende nun C:/Develop/ Achtung, ungewöhnlich: GLUT hat keine weiteren Unterordner Normalerweise gibt es /lib /include /src /bin 22.10.12 9 Eclipse 1. Entwicklungsumgebung (IDE) herunterladen / installieren 2. Compiler (wenn nicht in die IDE integriert) herunterladen / installieren / der IDE sagen, wo sie den Compiler auf deiner Festplatte findet 3. Bibliotheken herunterladen / entpacken / Ordnerpfade merken 4. Entwicklungsumgebung starten und neues Projekt erstellen 5. Ordnerpfade auf deiner Festplatte angeben, wo sich die Header (*.h) der Bibliotheken befinden, die du benutzen willst 6. Dazu passende Ordnerpfade für vorkompilierte Bibliotheken (*.lib / *.a) angeben 7. Dem Linker sagen, welche Dateien genau er aus diesen Ordnerpfaden benutzen soll 8. Eigene *.cpp Datei mit main-Funktion erstellen 9. Programm schreiben 10. Header includen (#include "glut.h") 11. Compiler starten 12. Programm ausführen und testen 22.10.12 10 Eclipse – Neues Projekt erstellen 1 2 3 4 5 6 22.10.12 11 Eclipse 1. Entwicklungsumgebung (IDE) herunterladen / installieren 2. Compiler (wenn nicht in die IDE integriert) herunterladen / installieren / der IDE sagen, wo sie den Compiler auf deiner Festplatte findet 3. Bibliotheken herunterladen / entpacken / Ordnerpfade merken 4. Entwicklungsumgebung starten und neues Projekt erstellen 5. Ordnerpfade auf deiner Festplatte angeben, wo sich die Header (*.h) der Bibliotheken befinden, die du benutzen willst 6. Dazu passende Ordnerpfade für vorkompilierte Bibliotheken (*.lib / *.a) angeben 7. Dem Linker sagen, welche Dateien genau er aus diesen Ordnerpfaden benutzen soll 8. Eigene *.cpp Datei mit main-Funktion erstellen 9. Programm schreiben 10. Header includen (#include "glut.h") 11. Compiler starten 12. Programm ausführen und testen 22.10.12 12 Eclipse – Library includen Das Menü „C/C++ Build > Settings“ eines Projekts ist besonders wichtig Fraglich, weshalb es so versteckt ist … Darin werden unsere nächsten 3 Schritte stattfinden Pfade zu Headerverzeichnissen der Libraries angegeben Pfade zu Vorkompilierten Libraries angeben Konkrete Library Dateien angeben 22.10.12 13 Eclipse – Library includen 1 „Properties“ 4 2 3 5+6 22.10.12 14 Eclipse – Library includen Wir wollen eine C++ Bibliothek einbinden, darum unter GCC C++ Compiler > Includes Bei Include path das Verzeichnis in dem die *.h Datei steckt Und bei Library search path das Verzeichnis in dem die *.lib Datei steckt Weil bei GLUT alles in einem Verzeichnis steckt, können wir dieses angeben Unter MinGW C++ Linker > Libraries müssen die Namen der Libraries angegeben werden Wir müssen die Einträge „opengl32“, „glut32“ und „glu32“ hinzufügen opengl32.lib wird von glut32.lib benötigt. Daher muss es vorher in der Liste stehen glut32.lib bietet uns vorgefertigte Funktionen und erleichtert uns die Arbeit mit OpenGL glu32.lib ist ein weiteres Utility Toolkit, das mit OpenGL mitgeliefert wird. Manche Systeme benötigen es allerdings zwingend Alle Angaben werden weder mit Pfad, noch mit Dateiendung *.lib gemacht! 22.10.12 15 Eclipse 1. Entwicklungsumgebung (IDE) herunterladen / installieren 2. Compiler (wenn nicht in die IDE integriert) herunterladen / installieren / der IDE sagen, wo sie den Compiler auf deiner Festplatte findet 3. Bibliotheken herunterladen / entpacken / Ordnerpfade merken 4. Entwicklungsumgebung starten und neues Projekt erstellen 5. Ordnerpfade auf deiner Festplatte angeben, wo sich die Header (*.h) der Bibliotheken befinden, die du benutzen willst 6. Dazu passende Ordnerpfade für vorkompilierte Bibliotheken (*.lib / *.a) angeben 7. Dem Linker sagen, welche Dateien genau er aus diesen Ordnerpfaden benutzen soll 8. Eigene *.cpp Datei mit main-Funktion erstellen 9. Programm schreiben 10. Header includen (#include "glut.h") 11. Compiler starten 12. Programm ausführen und testen 22.10.12 16 Eclipse – main Datei erstellen Wir erstellen im Projekt eine Sourcedatei namens main.cpp Der Name ist an sich egal Wichtig ist, dass sie die mainMethode enthält // Macros necessary for MinGW #define _STDCALL_SUPPORTED #define _M_IX86 #define _WCHAR_T_DEFINED //Include files #include <glut.h> void renderScene(void) { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glBegin(GL_TRIANGLES); glVertex3f(-0.5,-0.5,0.0); glVertex3f(0.5,0.0,0.0); glVertex3f(0.0,0.5,0.0); glEnd(); glutSwapBuffers(); } int main(int argc, char **argv) { // init GLUT and create Window glutInit(&argc, argv); glutInitDisplayMode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA); glutInitWindowPosition(100,100); glutInitWindowSize(320,320); glutCreateWindow("HelloGL"); // register callbacks glutDisplayFunc(renderScene); // enter GLUT event processing cycle glutMainLoop(); return 1; } 22.10.12 17 Eclipse 1. Entwicklungsumgebung (IDE) herunterladen / installieren 2. Compiler (wenn nicht in die IDE integriert) herunterladen / installieren / der IDE sagen, wo sie den Compiler auf deiner Festplatte findet 3. Bibliotheken herunterladen / entpacken / Ordnerpfade merken 4. Entwicklungsumgebung starten und neues Projekt erstellen 5. Ordnerpfade auf deiner Festplatte angeben, wo sich die Header (*.h) der Bibliotheken befinden, die du benutzen willst 6. Dazu passende Ordnerpfade für vorkompilierte Bibliotheken (*.lib / *.a) angeben 7. Dem Linker sagen, welche Dateien genau er aus diesen Ordnerpfaden benutzen soll 8. Eigene *.cpp Datei mit main-Funktion erstellen 9. Programm schreiben 10. Header includen (#include "glut.h") 11. Compiler starten 12. Programm ausführen und testen 22.10.12 18 Eclipse – Kompilieren Die Toolchain kann z.B. durch Klicken des Hammer-Icons aufgerufen werden Dadurch wird eine HelloWorld.exe Datei erstellt So sollte es nach dem Starten aussehen → Startet nicht? Befindet sich glut32.dll im Verzeichnis der *.exe Datei? Wenn nicht, einfach hineinkopieren! 22.10.12 19 Kleiner Exkurs zu Windows Umgebungsvariablen Jeder speichert seine Dateien woanders. Damit Verzeichnisse eindeutig gefunden werden können, gibt es Umgebungsvariablen Das Einstellungsmenü ist tief in der Systemsteuerung versteckt Systemeigenschaften > Reiter:Erweitert > Umgebungsvariablen Alternativ: In Suchleiste des Startmenüs „Umgebungsvariablen...“ eingeben“ 22.10.12 20 Kleiner Exkurs zu Windows Umgebungsvariablen Umgebungsvariablen werden Pfade auf deinem System zugeordnet Viele Bibliotheken legen eine Umgebungsvariable bei der Installation an Umgebungsvariablen haben folgende Eigenschaften: Systemvariablen gelten im Gegensatz zu Benutzervariablen für alle Benutzer Groß- Kleinschreibung ist unwichtig In Windowspfaden kann „%VARIABLE%“ anstatt des Pfades benutzt werden 22.10.12 21 Kleiner Exkurs zu Windows Umgebungsvariablen Besondere Variable: „PATH“ Standard für Pfade, die ausführbare Dateien enthalten (*.exe, oder *.bat) An den Pfaden enthaltene Dateien sind unabhängig vom Verzeichnis ausführbar Das ist z.B. für Systemprogramme oder Compiler wichtig ... … oder in der Windows Konsole nützlich Vorsicht! Nicht Löschen! Aber vorsichtig manuell ergänzen ist möglich Alle Pfade werden mit Semikolon (ohne Leerzeichen!) getrennt 22.10.12 22 Ende Vielen Dank für Eure Aufmerksamkeit! 22.10.12 23