1. EINFÜHRUNG Wine ist ein Programm, das es ermöglicht, Programme, die für Microsoft Windows geschrieben wurden (inklusive DOS-, Windows 3.x- und Win32- Binärdateien), unter Unix auszuführen. Es besteht aus einem Programm- Lader, der Microsoft Windows-Binärdateien lädt und ausführt, sowie einer Library (Winelib genannt), die Aufrufe der Windows API unter Verwendung der entsprechenden Unix- oder X11-Gegenstücke implementiert. Die Library kann auch benutzt werden, um Win32-Code nativ nach Unix zu portieren. Wine ist Freie Software, die unter der GNU LGPL veröffentlicht wird; Bitte lesen Sie die Details in der Datei LICENSE nach. 2. SCHNELLSTART Um den Quelltext zu kompilieren, empfiehlt es sich immer, den Wine- Installer für den Build und die Installation von Wine zu verwenden. Rufen Sie dazu aus dem Wurzelverzeichnis des Wine-Quelltextes (das diese Datei enthält) das folgende Kommando auf: ./tools/wineinstall Starten Sie Programme mit "wine [Optionen] Programm". Weitere Informationen und Problemlösungen entnehmen Sie bitte dem Rest dieser Datei, der Man-Page von Wine, den Dateien im Dokumentations-Verzeichnis des Wine-Quelltextes (siehe "DOKUMENTATION") und insbesondere der Vielzahl an Informationen, die Sie auf http://www.winehq.org finden. 3. VORAUSSETZUNGEN Um Wine kompilieren und ausführen zu können, brauchen Sie eines der folgenden Betriebssysteme: Linux version 2.0.36 oder neuer FreeBSD 4.x oder FreeBSD 5-CURRENT oder neuer Solaris x86 2.5 oder neuer NetBSD-current Da Wine Thread-Support auf Kernelebene benötigt, werden nur die oben aufgeführten Betriebssysteme unterstützt. Andere Betriebssysteme, die Kernel-Threads unterstützen, werden unter Umständen in der Zukunft unterstützt. Linux-Info: Obwohl Linux 2.2.x immer noch funktionieren sollte und Linux 2.0.x vielleicht auch noch funktioniert (ältere 2.0.x-Versionen verzeichneten Abstürze im Zusammenhang mit Threads), sollte man am besten einen aktuellen Kernel wie 2.4.x verwenden. FreeBSD-Info: Stellen Sie sicher, dass Sie die Optionen USER_LDT, SYSVSHM, SYSVSEM und SYSVMSG in Ihrem Kernel aktiviert haben. Weitere Informationen finden Sie im Ports-Tree: ftp://ftp.freebsd.org/pub/FreeBSD/ports/ports/emulators/wine/ Solaris-Info: Höchstwahrscheinlich müssen Sie den Wine-Build mit der GNU-Toolchain (gcc, gas etc.) durchführen. Warnung: Die Installation von gas stellt nicht sicher, dass es vom gcc auch verwendet wird. Den gcc neu zu kompilieren, nach der Installation von gas, oder die Symbolischen Links von cc, as und ld mit den GNU-Tools zu verknüpfen, soll ausreichend sein. NetBSD-Info: Stellen Sie sicher, dass Sie die Optionen USER_LDT, SYSVSHM, SYSVSEM und SYSVMSG in Ihrem Kernel aktiviert haben. Unterstützte Dateisysteme: Wine sollte auf den meisten Dateisystemen laufen. Jedoch wird Wine nicht starten, wenn umsdos für das Verzeichnis /tmp benutzt wird. Ein paar Kompatibilitäts-Probleme wurden auch gemeldet beim Dateizugriff über Samba. Ausserdem können wir, da NTFS derzeit nur sicher für Lesezugriffe genutzt werden kann, den Einsatz von NTFS nicht empfehlen; Windows-Programme benötigen fast immer Schreibzugriffe. Kopieren Sie NTFS-Dateien an einen Ort, an dem Sie Schreibrechte haben. Grundsätzliche Voraussetzungen: Sie müssen die Include-Dateien für X11-Entwicklung installiert haben (Debian nennt diese xlib6g-dev, RedHat XFree86-devel). Vorausgesetzte Build-Tools: Auf x86-Systemen wird der gcc >= 2.7.2 benötigt. Versionen vor 2.7.2.3 können Probleme damit haben, wenn bestimmte Dateien mit Optimierungen kompiliert werden, oft im Zusammenhang mit Problemen mit der Verwaltung von Header-Dateien. pgcc arbeitet derzeit nicht mit Wine. Die Ursache dieses Problems ist unbekannt. Natürlich benötigen Sie auch "make" (höchstwahrscheinlich GNU make). Des Weiteren benötigen Sie flex in der Version 2.5 oder höher und bison. Wenn Sie RedHat oder Debian benutzen, installieren Sie bitte die flex- und bison-Pakete. Optionale Support-Libraries: Wenn Sie CUPS Drucker-Unterstützung haben wollen, installieren Sie bitte die Pakete cups und cups-devel. Für die automatische Verarbeitung der Test-Skripte brauchen Sie auch den Entwicklungs-Headersupport aus libperl (in Debian das Paket libperl-dev). Die Voraussetzungen für das selbständige Durchführen des Builds der Dokumentation entnehmen Sie bitte dem Abschnitt "DOKUMENTATION". 4. KOMPILIEREN Wenn Sie sich dafür entscheiden, wineinstall nicht zu benutzen, führen Sie bitte die folgenden Kommandos für den Build von Wine aus: ./configure make depend make Das erledigt den Build des Programms "wine" und verschiedener Support- Libraries / -Binärdateien. Das Programm "wine" lädt ausführbare Windows-Dateien und führt sie aus. Die Library "libwine" ("WineLib") kann benutzt werden, um Windows-Quelltexte unter Unix zu kompilieren und zu verlinken. Mit ./configure --help können Sie sich die Konfigurations-Optionen für die Kompilierung anzeigen lassen. Um mit Hilfe einer Patch-Datei auf ein neueres Release zu aktualisieren, wechsen Sie erst mit cd in das Wurzelverzeichnis dieses Releases (das, welches diese README-Datei enthält). Geben Sie dann "make clean" ein und patchen Sie das Release mit dem Kommando: gunzip -c patch-file | patch -p1 wobei "patch-file" der Name der Patch-Datei ist (etwas wie Wine-yymmdd.diff.gz). Sie können dann erneut "./configure" und danach "make depend && make" aufrufen. 5. SETUP Nachdem der Build von Wine korrekt durchgelaufen ist, können Sie das Kommando "make install" aufrufen; Dadurch werden das Wine-Programm, die Man-Page und einige andere benötigte Dateien installiert. Vergessen Sie nicht, erst alle früheren Wine-Installationen zu entfernen. Führen Sie vor der Installation entweder "dpkg -r wine", "rpm -e wine" oder "make uninstall" aus. Wenn Sie die mit dem Wine-Quelltext gelieferte Dokumentation lesen wollen, schauen Sie sich bitte den Abschnitt "DOKUMENTATION" an. Wine benötigt eine Konfigurations-Datei namens "config" in Ihrem ~/.wine-Verzeichnis. Das Format dieser Datei wird in der Man-Page der Konfigurations-Datei erklärt (documentation/wine.conf.man). Die Datei documentation/samples/config enthält eine beispielhafte Konfigurations-Datei, die angepasst und an die oben erwähnte Stelle kopiert werden muss. Weitere Konfigurations-Hinweise finden Sie im Support-Bereich von http://www.winehq.org. Im Falle von Library-Ladefehlern (z.B. "Error while loading shared libraries: libntdll.so") fügen Sie bitte den Library-Pfad zur Datei /etc/ld.so.conf hinzu und führen Sie ldconfig als root aus. 6. AUSFÜHREN VON PROGRAMMEN Wenn Sie Wine aufrufen, können Sie den vollständigen Pfad zur ausführbaren Datei angeben oder nur einen Dateinamen. Beispiel: Um Solitaire auszuführen: wine sol (den Suchpfad, der in der Konfiguartions-Datei wine sol.exe angegeben wurde, benutzend) wine c:\\windows\\sol.exe (die Dateinamen-Syntax von DOS benutzend) wine /usr/windows/sol.exe (die Dateinamen-Syntax von Unix benutzend) wine sol.exe /parameter1 -parameter2 parameter3 (Programmaufruf mit Parametern) Hinweis: Der Pfad zur Datei wird auch zum Pfad hinzugefügt, wenn ein vollständiger Dateiname auf der Kommandozeile angegeben wird. Die Entwicklung von Wine ist noch nicht abgeschlossen, daher können einige Programme abstürzen. Vorausgesetzt, dass Sie winedbg korrekt entsprechend documentation/debugger.sgml einrichten, werden Sie dann in einem Debugger landen, um das Problem untersuchen und beheben zu können. Weitere Informationen zu diesem Thema entnehmen Sie bitte der Datei documentation/debugging.sgml. Sie sollten Backups von allen wichtigen Dateien machen, auf die Sie Wine Zugriff gewähren, oder spezielle Kopien für Wine anlegen, da Benutzer einige Fälle gemeldet haben, in denen Dateien zerstört wurden. Führen Sie zum Beispiel NICHT den Explorer aus, wenn Sie kein geeignetes Backup haben, da er manchmal Verzeichnise verstümmelt / umbenennnt. Selbst andere MS-Applikationen wie z.B der Messenger sind nicht sicher, da sie unter Umständen den Explorer aufrufen. Diese spezielle Beschädigung (!$!$!$!$.pfr) kann zumindest teilweise durch http://home.nexgo.de/andi.mohr/download/decorrupt_explorer behoben werden. 7. DOKUMENTATION Im Verzeichnis documentation/ befindet sich einiges an Dokumentation (verschiedene Wine-Guides usw.). Sie sind auch im WineHQ verfügbar. Wenn Sie die SGML-Dateien dort verarbeiten möchten, können Sie das Kommando "make doc" im Verzeichnis documentation/ ausführen. Dafür wird das Paket "sgml tools" vorausgesetzt (für db2html, db2ps, db2pdf): Debian: docbook-utils Mandrake: sgml-tools-A.B.C-DDmdk SuSE: docbktls-A.BB.C-DD 8. WEITERFÜHRENDE INFORMATIONEN WWW: Eine große Anzahl an Informationen findet sich im WineHQ unter http://www.winehq.org/ : Verschiedene Wine Guides, Applikations-Datenbank, Fehlerverfolgungs-System. Das ist vermutlich der beste Ausgangspunkt. FAQ: Die FAQ zu Wine befindet sich unter http://www.winehq.org/FAQ Usenet: Hilfe und Diskussionen zu auf Wine bezogenen Problemen finden Sie unter comp.emulators.ms-windows.wine. Fehler: Melden Sie Fehler bitte an Wine-Bugzilla unter http://bugs.winehq.org Schauen Sie bitte erst in der Bugzilla-Datenbank nach, ob Ihr Problem bereits gemeldet wurde, bevor Sie eine Fehlermeldung verfassen. Sie können Fehlermeldungen auch an comp.emulators.ms-windows.wine schicken. Lesen Sie bitte die Datei documentation/bugs.sgml um zu sehen, welche Informationen benötigt werden. IRC: Online-Hilfe wird Ihnen im Chat-Kanal #WineHQ unter irc.freenode.net gewährt. CVS: Der aktuelle Wine-Entwicklungs-Tree ist über CVS verfügbar. Besuchen Sie http://www.winehq.org/cvs für weitere Informationen. Mailing-Listen: Es gibt mehrere Mailing-Listen für die Wine-Entwickler; Schauen Sie sich bitte dazu http://www.winehq.org/forums an. Wenn Sie etwas hinzufügen oder einen Fehler beheben, senden Sie den Patch bitte (im 'diff -u'-Format) an die Liste wine-patches@winehq.org, um ihn in die nächste Ausgabe aufnehmen zu können. -- Alexandre Julliard julliard@winehq.org Übersetzung von Christian Britz (Deutschland) Auf die Übersetzung bezogene Fehlermeldungen, Anregungen und Kommentare senden Sie bite an: cbritz@gmx.net