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