This page is the German Translation of Chapter 1: Installation
Prerequisites
OpenTK ist eine C# Library welches für .Net 2.0 geschrieben wurde. Um diese nutzen zu können, benötigen Sie die erforderlichen Hardware-Treiber für OpenGL (Grafik), OpenAL (Audio) und OpenCL (Computing), abhängig vom Verwendungszweck Ihres OpenTK Projektes:
Bei den meisten Betriebssysteme sind die Runtimes schon vorinstalliert. Bitte beachten Sie, dass OpenTK nicht mit .Net 1.1 oder .Net CF kompatibel ist.
OpenTK ist in Zwei Sorten unterteilt. Einmal als Windows-Installer und einmal als Zip-Archiv.
Windows Nutzer werden wohl den Installer bevorzugen. Führen Sie diesen einfach aus und befolgen Sie die angezeigten Anweisungen. Sie benötigen für den Installer keine Administrationsrechte, es sei denn Sie wählen bei der Installation OpenAL und/oder das GLSL-Plugin für Visual Studio Professional. Nachdem die Installation erfolgreich beendet ist, wird es Ihnen möglich sein OpenTK in dein Prjekt als Referenz hinzuzufügen (Klicken Sie dazu mit der Rechten Maustaste auf "Verweise"->"Verweis hinzufügen" und wählen Sie unterm ".Net"-Tab OpenTK heraus).
Unter Linux und Mac Os X entpacken Sie das Archiv in einen beliebegen Ordner und fügen Sie OpenTK.dll in Ihre Projek.st Referenz hinzu. Sie finden die Datei unter Binaries/OpenTK/Release. Daraufhin fügen Sie die OpenTK.dll.comfig in Ihr Projekt hinzu und geben beim IDE die Anweisung, es in Ihr Projektverzeichnis hinein zu kopieren. Dies ist für eine Fehlerfreie Funktionalität notwendig!
Sie können OpenTK wahlweise über ein Kommandofenster oder einem IDE erstellen:
msbuild OpenTK.sln /p:Configuration=Releasexbuild OpenTK.sln /p:Configuration=ReleaseAchtung: Wenn Sie eine ältere Version von Mono nutzen als 2.6, wird OpenTK direkt vom Sourcecontroll erstellt. Um dies zu umgehen öffnen Sie im IDE OpenTK.sln und drücken mit der rechten Maustaste auf "Build.UpdateVersion" und wählen "Run". Nun können Sie OpenTK normal erstellen.
This page is the German Translation of Troubleshooting.
Die meisten Probleme beim Ausführen von OpenTK-basierten Anwendungen haben etwas mit dem Fehlen der richtigen Treiber beim Zielsystem zu tun.
OpenTK benötigt die folgenden installierten Komponenten:
Nachfolgend finden Sie einige hilfreiche Links. Bemerkung: Einige der Seiten erfordern aktiviertes Javascript.
Mono
Novell (Linux, Mac & Windows) http://www.go-mono.com/mono-downloads/download.html
.Net
Microsoft (Windows) http://www.microsoft.com/downloads/details.aspx?displaylang=de&FamilyID=...
OpenAL
Bemerkung: Es ist egal von welchem Hersteller Ihre Soundkarte ist, wählen Sie einfach das passende Betriebssystem.
Creative Labs (Mac & Windows) http://www.openal.org/downloads.html
Strangesoft (Linux) http://kcat.strangesoft.net/openal.html
OpenGL
ATi (Linux, Mac & Windows) http://ati.amd.com/support/driver.html
NVIDIA (Linux & Windows) http://www.nvidia.com/Download/index.aspx?lang=de
Intel (Windows) http://downloadcenter.intel.com/
Intel (Linux) http://intellinuxgraphics.org/download.html
Mesa 3D (software rendering) http://sourceforge.net/project/showfiles.php?group_id=3
Wenn Sie einen Laptop mit Nvidia-Grafikkarte haben, können Sie aktuelle Treiber hier herbekommen: http://www.laptopvideo2go.com
Letze Aktualisierung dieser Links: März 2008
Tags for searches:
help problem error outdated trouble crash fail failure exception abort opengl openal driver ati intel nvidia
This page is the German Translation of Linux.
Mono installieren
Wenn Sie eine aktuelle Linux-Distribution nutzen, müssten bereits alle erforderlichen Abhängigkeiten für OpenTK Projekte erfüllt sein: Die Mono Laufzeitumgebung und der Mono Compiler. Führen Sie den Befehl "mono --version" und "gmcs --version" aus und überprüfen Sie, ob die Ausgabe ungefähr so aussieht:
$ mono --version Mono JIT compiler version 1.2.6 (tarball) Copyright (C) 2002-2007 Novell, Inc and Contributors. www.mono-project.com TLS: __thread GC: Included Boehm (with typed GC) SIGSEGV: altstack Notifications: epoll Architecture: amd64 Disabled: none $ gmcs --version Mono C# compiler version 1.2.6.0
Wenn einer oder beide der Befehle fehlschlagen, müssen Sie Mono nachinstallieren. Mono Pakete müssten in dem Paket-Manager Ihrer Distribution verfügbar sein, sodass folgende Zeile funktionieren müsste:
# Ubuntu und andere .deb-basierende Distributionen sudo apt-get install mono mono-gmcs # or su -c "apt-get install mono mono-gmcs" # Fedora Core und .rpm-basierende Distributionen su -c "yum install mono mono-gmcs"
Wenn kein Mono Paket verfügbar ist oder es schlicht veraltet ist (mono --version gibt eine Version kleiner als 1.2.6 zurück), sollten Sie Mono selber kompilieren. Es gibt eine Nachricht im Support-Forum, die den Kompiliervorgang von Mono beschreibt.
Alternativ findet man ein Setup für alle gängigen Linux-Distributionen auf der Download-Seite des Mono-Projektes.
Nutzen eines binären Releases
Laden Sie das aktuellste OpenTK Release von der Sourceforge Projektseite herunter und entpacken Sie es:
tar -xvf opentk-0.3.13-mono.tar.gz
Es wird ein neues Verzeichnis mit fünf Unterordnern erzeugt: "Documentation", "Binaries", "Source", "Build" und "Quickstart". Versuchen Sie die Beispiele aus dem zweiten Ordner auszuführen, um zu überprüfen, ob alles funktioniert:
cd opentk-0.9/Binaries/Examples/mono mono Examples.exe
Nun öffnet sich hoffentlich ein neues Fenster, welches alle verfügbaren Beispiele auflistet. Falls nicht, werfen Sie einen Blick auf den Bereich "Fehlerdiagnose".
Der "Binaries/Libraries" Ordner enthält die Haupt-OpenTK-Assembly (OpenTK.dll) sowie die OpenTK.dll.config Datei - das ist alles was man benötigt, um OpenTK Projekte zu starten. Wenn Sie MonoDevelop nutzen, schauen Sie auch in den "Quickstart" Ordner, um ein fertiges Projekt zu sehen. Als letztes sollte Sie nicht vergessen in die "Release Notes" im "Documentation" Ordner zu schauen.
Fehlerdiagnose
Der folgender Fehler wurde auf Fedora Core 8 beim Ausführen der Examples.exe gemeldet:
Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.Form ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Drawing.GDIPlus ---> System.DllNotFoundException: gdiplus.dll at (wrapper managed-to-native) System.Drawing.GDIPlus:GdiplusStartup (ulong&,System.Drawing.GdiplusStartupInput&,System.Drawing.GdiplusStartupOutput&) at System.Drawing.GDIPlus..cctor () [0x00000] --- End of inner exception stack trace ---
Dies wird durch einen fehlenden Eintrag in "etc/mono/config" verursacht. Um das Problem zu beseitigen, öffnen Sie die eben genannte Datei (als root) und fügen Sie die folgende Zeile hinzu:
<dllmap dll="gdiplus.dll" target="/usr/lib/libgdiplus.so.0"
Nun müssten die Beispiele funktionieren.
OpenTK eigenhändig kompilieren
Das Build-System von OpenTK nutzt NAnt, daher muss dieses zuerst installiert werden:
# Ubuntu sudo apt-get install nant # Debian su -c "apt-get install nant" # Fedora su -c "yum install nant"
Ist das einmal geschafft, kann man den Quellcode entpacken und in den Build-Ordner wechseln:
unzip opentk-0.9.zip cd opentk-0.9/Build mono Build.exe mono
Nach dem Ende der Kompilation befinden sich die Build-Produkte im "Binaries"-Ordner. Um die Debug-Version zu kompilieren, hängen Sie "debug" an den Befehl an, sodass der Befehl wie folgt aussieht:
mono Build.exe mono debugThis page is the German Translation of Windows.
OpenTK hat bisher kein Installationspaket bzw. ein Setup. Stattdessen lädt man die OpenTK Binaries herunter and fügt "OpenTK.dll" als Verweis zu seinem Visual Studio/SharpDevelop/MonoDevelop Projekt hinzu (Binaries zuerst entpacken).
Außerdem ist es eine gute Idee "OpenTK.dll.config" in sein Projekt aufzunehmen und die Eigenschaft "In Ausgabeverzeichnis kopieren" auf "Immer kopieren" zu setzen. Ohne diese Konfiguration wird die Anwendung zwar unter Windows, dafür aber nicht unter Linux oder Mac OS X laufen, daher dies bitte nicht vergessen!
Als letztens sollte man noch die Eigenschaft "Lokale Kopie" des OpenTK-Verweises auf "True" setzen, um die Distribution der Anwendung zu vereinfachen.