claim.gif
Linux Magazin Linux User Easy Linux Ubuntu User International Linux Community
Erschienen in EasyLinux 05/2005   »   Ausgabe bestellen

Windows-Programme mit Wine nutzen

In vino veritas

von Andrea Müller


Um unter Linux mit Windows-Programmen zu arbeiten, müssen Sie nicht gleich einen Emulator wie VMware installieren. Manchmal läuft die gewünschte Software mit Hilfe von Wine. Wir verraten, wie Sie herausfinden, ob das auch für Ihre Wunschanwendung gilt.

Der Umstieg auf Linux fiele den meisten Nutzern wesentlich leichter, wenn sie nicht fast alle unter Windows lieb gewonnenen Programme zurücklassen müssten. Obwohl Linux in nahezu allen Bereichen Alternativen bietet, mag sich manch ein Betriebssystemumsteiger damit nicht zufrieden geben. So leistungsfähig Gimp auch ist, wer sich perfekt mit PaintShop Pro auskennt, braucht eine gewisse Zeit, um sich in die freie Alternative einzuarbeiten. Selbst wenn es unter Linux gut ein Dutzend Bildbetrachter gibt, möchte manch einer vielleicht trotzdem lieber mit dem unter Windows populären Irfan View weiterarbeiten. Im schlimmsten Fall existiert gar keine Linux-Alternative für eine dringend benötigte Anwendung.

Die meisten Nutzer arbeiten daher mit einem Dual-Boot-System, starten also je nach der zu bewältigenden Aufgabe Linux oder Windows. Manch einer, dem das zu lästig ist, verwendet VMware, um beide Systeme gleichzeitig zu betreiben.

Ein weiterer Ausweg liegt in der Nutzung von Wine [1]. Der Name steht für Wine is not an emulator (Wine ist kein Emulator). Das Programm emuliert kein Betriebssystem oder einen kompletten Rechner, sondern gaukelt Windows-Programmen die richtige Umgebung vor. Dazu fängt Wine alle Windows-API-Aufrufe eines Programms ab und versucht, sie in das passende Linux-Äquivalent zu übersetzen. Da sich weder Microsoft noch andere Software-Hersteller gerne in die Karten schauen lassen, gelingt das Wine bei verschiedenen Programmen unterschiedlich gut: Manche Anwendungen lassen sich nicht einmal installieren, andere Programme funktionieren nicht korrekt. Im besten Fall merken Sie jedoch keinen Unterschied zum Betrieb unter Windows -- einzig mit geringen Geschwindigkeitseinbußen müssen Sie fast immer rechnen.

Wine ist ebenso wie Linux freie Software, so dass es Sie nichts außer ein wenig Zeit kostet auszuprobieren, ob ein für Sie wichtiges Windows-Programm mit Hilfe von Wine funktioniert. Möchten Sie sich vorab darüber informieren, ob eine Anwendung läuft, erfahren Sie das eventuell unter [2] oder [3]. Die beiden Seiten bieten eine Liste von Programmen mitsamt der Aussage, wie gut die jeweilige Anwendung mit Wine zusammenarbeitet. Oft finden Sie dort sogar Troubleshooting-Tipps, mit denen Sie sogar anfangs bockige Programme verwenden können.

Altlasten entfernen

Obwohl der Name des Programms einen zu der Vermutung verleiten könnte, werden Wine-Versionen mit zunehmendem Alter nicht besser, im Gegenteil: Die Entwickler beseitigen in jeder neuen Version Fehler und fügen neue Features hinzu, mit denen auch Windows-Programme laufen, die bisher nicht mit dem Emulator funktionierten. Bei Suse Linux gehört Wine zum Umfang der Standardinstallation, allerdings handelt es sich dabei um Wine-Versionen des letzten Jahres, die inzwischen veraltet sind. Suse-Linux-Nutzer sollten daher zunächst das vorinstallierte Wine-Paket entfernen und danach die aktuelle Version des Programms aus unserem Download-Bereich [5] einspielen.

  1. Starten Sie über System / YaST aus dem K-Menü das Konfigurations-Tool und weisen Sie sich mit dem root-Passwort als Administrator aus.
  1. Markieren Sie in der linken Fensterhälfte den Eintrag Software und klicken Sie auf Software installieren oder löschen.
  1. Wählen Sie im Drop-down-Feld Filter der Paketverwaltung den Eintrag Suche aus. Der Suchbegriff wine und ein Druck auf [Eingabe] fischen das richtige Paket heraus.
  1. Klicken Sie das Wine-Paket mit der rechten Maustaste an und wählen Sie Löschen aus dem Kontextmenü. Über die Schaltfläche Übernehmen entfernen Sie die Distributionsversion der Software.

Installation

Eine aktuelle Wine-Version installieren Sie bequem mit dem Paketverwaltungs-Frontend Ihrer Distribution. Im EasyLinux-Download-Bereich finden Sie für alle von uns unterstützten Distributionen ein passendes Paket.

  1. Unter Suse Linux navigieren Sie im Konqueror in den Download-Ordner und klicken das Wine-Paket an.
  1. Der KDE-Datei-Manager öffnet die Vorschauansicht, in der Sie die Kurzbeschreibung und eine Liste aller Dateien im RPM-Paket finden. Klicken Sie auf Install package with YaST, um Wine zu installieren.
  1. Geben Sie in der folgenden Dialogbox das Administratorpasswort ein.
  1. YaST startet, überprüft, ob Wine noch weitere Software benötigt, und spielt das Paket ein. Danach bringt das Systemverwaltungs-Tool die Konfigurationsdateien auf den neuesten Stand und beendet sich.

Unter Fedora Core 2 gelingt die Installation ebenso einfach: Doppelklicken Sie im Konqueror auf die Datei wine-20050211-1fc2winehq.i386.rpm und geben Sie das root-Passwort ein. Daraufhin startet system-install-packages und zeigt eine Übersicht an (Abbildung 1). Klicken Sie dort auf Weiter, um Wine zu installieren. Der Installationsassistent beendet sich, sobald er alle Dateien kopiert hat.

Abb. 1: Bei einem Klick auf "Details zeigen" blendet "system-install-packages" eine Liste der zu installierenden Pakete ein.

Auch unter Mandrake Linux starten Sie die Installation mit einem Doppelklick auf das heruntergeladene Wine Paket. Geben Sie zunächst das root-Passwort ein, da nur der Administrator systemweit Software installieren darf. In der folgenden Dialogbox klicken Sie auf OK. Nun startet RPMDrake und spielt das Wine-Paket ein.

Wine einrichten

Wine taucht nach der Installation nicht im Startmenü auf, da Sie das Programm aus einem Kommandozeilenfenster heraus starten. Bevor Sie die erste Windows-Applikation einspielen, erstellen Sie eine passende Umgebung für Wine. Falls Sie schon einmal mit einer älteren Version des Programms gearbeitet haben, benennen Sie zunächst den alten Konfigurationsordner um. Er heißt .wine und liegt in Ihrem Home-Verzeichnis. Damit Konqueror das mit einem Punkt beginnende Konfigurationsverzeichnis anzeigt, wählen Sie Ansicht / Versteckte Dateien anzeigen. Markieren Sie den Ordner .wine mit der rechten Maustaste und klicken Sie im Kontextmenü auf Umbenennen.

Mit dem Programm winecfg, das bei der Wine-Installation ebenfalls auf der Festplatte gelandet ist, erzeugen Sie die Verzeichnisstruktur, die Wine erwartet. Öffnen Sie eine KDE-Konsole und geben Sie dort winecfg ein. Die Anwendung informiert Sie darüber, dass sie sich noch im Beta-Stadium befindet und derzeit noch nichts an der Wine-Konfigurationsdatei ändert. Sie können sich in dem grafischen Programm nur die derzeitigen Einstellungen ansehen (Abbildung 2). Zumindest legt das Programm beim Start aber einen neuen Ordner namens .wine in Ihrem Home-Verzeichnis an. Darunter erzeugt es die Verzeichnisse drive_c und dosdevices. In dosdevices liegen Verknüpfungen auf die Verzeichnisse, die Wine als Windows-Laufwerke erkennt (Abbildung 3). So beherbergt drive_c eine virtuelle C:-Partition mit den Windows-typischen Unterordnern Programme, windows und My Documents (Eigene Dateien). Unter Suse Linux schreibt winecfg sogar eine Beispielkonfiguration, die Datei /home/benutzername/.wine/config.

Nutzer, die mit Fedora Core 2 oder Mandrake Linux arbeiten, laden eine Beispielkonfiguration aus unserem Download-Bereich herunter und speichern ie im Ordner /home/benutzername/.wine unter dem Namen config.

Abb. 2: "winecfg" zeigt Ihnen die aktuelle Wine-Konfiguration an.

Abb. 3: Das Konfigurationsprogramm legt im Ordner "/home/benutzername/.wine/dosdevices" Verknüpfungen für die Ordner an, die Wine als virtuelle Windows-Laufwerke benutzt.

Anwendungen installieren und starten

Um nun eine Windows-Anwendung zu installieren, rufen Sie die Installationsdatei -- sie heißt meistens setup.exe oder install.exe -- mit dem Programm wine auf. Öffnen Sie dazu eine KDE-Konsole und geben Sie dort den folgenden Befehl ein:

wine /pfad/zu/setup.exe

Haben Sie beispielsweise die Installationsdatei des populären Grafikbetrachters Irfan View im Ordner /home/benutzername/downloads gespeichert, startet das Kommando

wine /home/benutzername/downloads/iview295.exe

die Installation. Alternativ verwenden Sie die Wine-Laufwerksbezeichnung. Das Root-Verzeichnis von Linux betrachtet Wine als Laufwerk Z:. Wenn Sie bei der Pfadangabe Laufwerksbuchstaben verwenden wollen, müssen Sie den unter dem System aus Redmond üblichen Verzeichnistrenner (\) benutzen also:

wine 'Z:\home\benutzername\iview395.exe'

Den Pfad schreiben Sie in Apostrophe, um Probleme mit eventuell vorhandenen Leerzeichen in Datei- und Ordnernamen zu vermeiden. Die Pfadeingabe nach Linux-Art ist jedoch komfortabler, da Sie dabei die Autovervollständigung der Shell nutzen können: Sobald Sie einige Zeichen des Pfades eingegeben haben und die Tabulator-Taste drücken, vervollständigt die Bash den Namen automatisch.

Kommt Wine mit der ausführbaren Datei zurecht, startet ebenso wie unter Windows der Installationsassistent, der Sie nach dem Zielordner fragt und die Dateien auf das virtuelle Windows-C:-Laufwerk (/home/benutzername/.wine/drive_c) kopiert (Abbildung 4). Wenn Sie alle Vorgaben des Assistenten übernehmen, landen die meisten Anwendungen im Ordner Programme/Anwendungsname.

Abb. 4: Die Installation von Corel Draw 8 läuft mit Hilfe von "wine" genauso ab wie unter Windows, sogar die Schriftenvorschau funktioniert.

Die so installierte Windows-Software starten Sie ebenfalls von der Kommandozeile aus mit wine. Für Irfan View aus dem obigen Beispiel lautet der richtige Befehl

wine /home/benutzername/.wine/drive_c/Programme/IrfanView/i_view32.exe

Sind Sie sich nicht sicher, wie die ausführbare Datei eines Programms heißt, schauen Sie mit dem Konqueror nach, welche Dateien im Programmverzeichnis auf .exe enden. Noch eleganter starten Sie die mit Wine eingespielten Programme über das K-Menü. Die meisten Anwendungen legen unter Windows einen Eintrag im Startmenü an. Das erkennt Wine und erzeugt passende Verknüpfungen im Ordner Wine des K-Menüs (Abbildung 5). Für manche Programme wie Winzip finden Sie nach der Installation sogar ein Desktop-Icon. Falls ein Programm jedoch nicht funktioniert wie erwartet oder sogar einfriert, sollten Sie es aus einer Konsole starten. Sie können in diesem Fenster [Strg-C] drücken, um Wine zu beenden und erhalten eventuell eine Fehlermeldung, die Ihnen hilft, der Ursache des Problems auf die Spur zu kommen.

Abb. 5: Die installierten Windows-Programme tragen Verknüpfungen im Wine-Ordner des K-Menüs ein.

An der Anwendungsfront

Leider funktionieren nicht alle Programme mit Wine gleichermaßen gut, manche lassen sich nicht einmal installieren. Bei unseren Tests zu diesem Artikel haben wir mehrere beliebte Anwendungen eingespielt und dabei unterschiedliche Erfehrungen gemacht. Die Installationsroutine von Corel Draw 12 startete zwar, brach aber kurz darauf mit einer Fehlermeldung ab. Version 8 des Grafikpakets lies sich hingegen problemlos installieren. Danach funktionierten nur Corel Draw, das OCR-Programm und Corel Texture zum Erzeugen von Texturen (Abbildung 6). Bei dem Vektorzeichenprogramm Draw erschien die Eigenschaftsleiste jedoch als separates Fenster. Photopaint startete, stürzte aber bei der Auswahl der meisten Bildbearbeitungswerkzeuge und Effektfilter ab.

Praktisch ohne Einschränkungen lief das unter Windows beliebte Irfan View: Bildbearbeitung, die Slideshow, der Thumbnail-Browser und sogar das Erzeugen von Multipage-TIFFs erledigte das Programm stabil und zuverlässig. Bei der Installation fehlte dem Programm zunächst die Datei mfc42.dll. Eine Google-Suche nach diesem Namen und dem Begriff download führte jedoch zu [5]: Dort finden Sie die DLL-Datei in gezippter Form. Laden Sie sie herunter, entpacken Sie sie mit einem Programm wie ark und kopieren Sie sie in den Ordner /home/benutzername/.wine/drive_c/windows/system. Starten Sie danach erneut die Irfan-View-Installation, die nun fehlerfrei verläuft.

Ebenso problemlos funktionieren der Word- und Excel-Viewer von Microsoft, der Datei-Manager Total Commander, Winzip und eine ältere Version des Bildbearbeitungsprogramms PhotoLine.

Probleme zeigen sich oft bei Programmen, die den Internet Explorer voraussetzen. Zwar finden Sie unter [6] eine Anleitung, wie Sie den Microsoft-Browser einspielen, das Vorgehen ist allerdings nicht ganz einfach, und die mitgelieferte Konfigurationsdatei führte bei unserem Test dazu, dass einige der bereits eingespielten Programme nicht mehr starteten.

Abb. 6: Corel Texture aus Version 8 der Grafiksuite läuft mit Wine auch unter Linux.

Troubleshooting

Startet eine Anwendung nicht auf Anhieb oder stehen bestimmte Funktionen nicht zur Verfügung, ist das kein Grund, gleich die Flinte ins Korn zu werfen. Beschwert sich ein Programm, dass es eine Datei nicht findet, hilft es oft schon, mit dem Befehl

cd /home/benutzername/.wine/drive_c/Programme/anwendung

in das Installationsverzeichnis der Software zu wechseln, bevor Sie sie mit wine starten. Führt das nicht zum Erfolg, gibt es in der Datei .wine/config in Ihrem Home-Verzeichnis einige Schräubchen, an denen Sie drehen können. Viele ältere Programme kommen nicht damit zurecht, dass unter Linux ein Window Manager die Kontrolle über die Fenster auf dem Desktop hat. So gelingt es beispielsweise bei dem Windows-Mail-Programm MR/2 nicht, den Mail-Editor zu starten (Abbildung 7). Um solchen Applikationen einen eigenen Windows-Desktop vorzugaukeln, ändern Sie probehalber zwei Zeilen in der Wine-Konfigurationsdatei.

Abb. 7: Manche Programme kommen nicht damit zurecht, dass der X-Server die Fenster verwaltet: Hier überlagern sich Editor- und Programmfenster, die Eingabe von Text ist unmöglich.
  1. Erstellen Sie eine Sicherheitskopie der Datei /home/benutzername/.wine/config, so dass Sie später jederzeit zu den Wine-Vorgaben zurückkehren können.
  1. Geben Sie kwrite /home/benutzername/.wine/config in ein mit [Alt-F2] geöffnetes Schnellstartfenster ein, um den KDE-Text-Editor mit der richtigen Datei zu starten.
  1. Wählen Sie Bearbeiten / Suchen aus dem Menü und benutzen Sie Managed als Suchbegriff.
  1. KWrite springt zur Zeile, in der "Managed" = "Y" steht. Ändern Sie dort das Y (für Yes) in N (für No). Gehen Sie nun zwei Zeilen weiter nach unten zum Eintrag ;"Desktop" = "640x480". Entfernen Sie das Semikolon, das als Kommentarzeichen dient, und ändern Sie 640x480 in 800x600.
  1. Speichern Sie die Datei mit einem Klick auf das Diskettensymbol.

Sobald Sie nun ein Windows-Programm starten, erzeugt Wine einen 800x600 Bildpunkte großen Desktop. Mit dieser Einstellung gelingt auch der Betrieb des bockigen Windows-Mail-Programms (Abbildung 8).

Abb. 8: Mit den richtigen Einstellungen in der Wine-Konfigurationsdatei startet auch der Text-Editor des Mail-Programms MR/2.

Fehlersuche mit Windows-Tools

Komplizierter ist die Fehlersuche, wenn ein Programm mit den in Wine eingebauten DLL-Dateien nicht funktioniert, aber die Fehlermeldung keinen Hinweis darauf gibt, woran es hapert. Um herauszufinden, ob es ausreicht, eine Windows-DLL-Datei auf das virtuelle Windows-Laufwerk zu kopieren, müssen Sie erst in Erfahrung bringen, welche Dateien das Programm überhaupt nutzt. Dafür benötigen Sie ein Windows-System und die Installations-CD des Betriebssystems. Mit depends.exe liefert Windows ein Tool mit, das Ihnen verrät, welche DLL-Dateien ein Programm benötigt. Damit das klappt, muss die Anwendung jedoch auch unter Windows installiert sein.

  1. Legen Sie die Windows-CD ein und wechseln Sie in den Ordner Support\Tools. Doppelklicken Sie auf die Datei SETUP.EXE, um die Microsoft-Support-Tools einzuspielen.
  1. Starten Sie über Start / Programme / Windows Support Tools / Command Prompt eine Eingabeaufforderung im Support-Tools-Ordner und geben Sie dort depends.exe ein.
  1. Über File / Open öffnen Sie den Dateiauswahldialog. Markieren Sie dort die Programmdatei, über die Sie Informationen benötigen, und drücken Sie [Eingabe].

depends.exe zeigt alle DLL-Dateien an, auf die das Programm zugreift (Abbildung 9). Eventuell finden Sie hier schon anhand der Wine-Fehlermeldung einen Kandidaten zum Umkopieren -- meistens ist es jedoch nötig, nach und nach mehrere Dateien auf Verdacht zu kopieren. Wenn man ein bestimmtes Programm dringend benötigt, lohnt sich manchmal der Aufwand.

Abb. 9: "depends.exe" zeigt unter Windows, welche DLL-Dateien ein Programm lädt.

Wine ist kein Allheilmittel für den Betrieb von Windows-Applikationen unter Linux. Große Programmpakete wie Microsoft Office in der aktuellsten Version unterstützt der Schnittstellenemulator nur unzureichend. Geht es Ihnen nur darum, ein bestimmtes Programm auch unter Linux auszuführen, sollten Sie Wine zumindest eine Chance geben. (amü)

Infos
[1] Wine: http://www.winehq.com/
[2] Wine-Kompatibilitätsliste: http://appdb.winehq.org/
[3] Wine-Kompatibilitätsliste: http://frankscorner.org/
[4] EasyLinux-Download-Bereich: http://www.easylinux.de/Download
[5] Download-Seite für Windows-DLL-Dateien http://www.dll-files.com/dllindex/
[6] Anleitung zur Installation des Internet Explorers mit Wine: http://frankscorner.org/index.php?p=ie6

Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links" nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedruckten Fassung entsprechen.

Druckerfreundliche Version | Feedback zu dieser Seite | Datenschutz | © 2016 COMPUTEC MEDIA GmbH | Last modified: 2007-04-05 11:10

Nutzungsbasierte Onlinewerbung

[Linux-Magazin] [LinuxUser] [Linux-Community] [Admin-Magazin] [Ubuntu User] [Smart Developer] [Linux Events] [Linux Magazine] [Ubuntu User] [Admin Magazine] [Smart Developer] [Linux Magazine Poland] [Linux Community Poland] [Linux Magazine Brasil] [Linux Magazine Spain] [Linux Technical Review]