![]() |
|
||||||||||||||||||||
|
|||||||||||||||||||||
|
|||||||||||||||||||||
von Peter Kreußel
Warum laufen Windows-Programme nicht unter Linux? Die Antwort ist einfach: Programme brauchen die Unterstützung des Betriebssystems. Dieses teilt Prozessorressourcen und Arbeitsspeicher zu, verwaltet die Festplatte und ermöglicht es, Hardware wie Sound- oder Grafikkarte und Drucker über definierte Schnittstellen anzusprechen. Doch damit nicht genug: Viele Aufgaben, wie die Anzeige einer grafischen Oberfläche (Menüs, Symbolleisten oder Dialogfelder), überlassen Programme so genannten Bibliotheken. Alle Funktionen, die die Komponenten eines Linux- oder Windows-Systems einem Programm zur Verfügung stellen, heißen zusammenfassend API.
Die APIs unter Linux und Windows unterscheiden sich aufgrund ihrer unterschiedlichen Geschichte grundlegend: Linux hat sein Vorbild in Unix, das von den AT&T Labs und an amerikanischen Universitäten entwickelt wurde, Windows entstand als grafisches Front-End zu MS-DOS. Zwei Welten stehen unversöhnt nebeneinander? Nicht ganz: Wine ermöglicht es, Windows-Programme unter Linux laufen zu lassen.
Dazu ist es erforderlich, alle Funktionen, die die Windows-API zur Verfügung stellt, für die Linux-API zu übersetzen: Die Entwickler nennen Wine eine translation layer (Übersetzungsschicht). Der Sinn dieses Begriffs erschließt sich, wenn Sie sich ansehen, wie Sie Windows-Programme mit Wine starten: Dazu geben Sie wine Programmname.exe in eine Textkonsole ein. Das Programm läuft also nicht direkt unter Linux. Vielmehr öffnet Wine die Programmdatei und simuliert dann, was passieren würde, wenn diese unter Windows liefe. Alle Anfragen, die das Programm an die Windows-API stellt, muss Wine dabei in entsprechende Linux-Aufrufe verwandeln. Da die API eines Betriebssystems tausende Funktionen umfasst, ist der Aufwand, einen "Vermittler" wie Wine zu programmieren, sehr groß.
Erschwerend kommt hinzu, dass sich weder die Hersteller von Windows noch von kommerziellen Windows-Programmen gerne in die Karten schauen lassen. Um herauszufinden, was auf API-Ebene passiert, wenn ein Windows-Programm abläuft, ist also detektivischer Spürsinn gefragt. Deswegen laufen mit Wine auch bei weitem nicht alle Windows-Programme. Die Chance, dass ältere Programme funktionieren, ist größer als bei neueren. Da Wine sich schnell weiter entwickelt, ist es zudem sinnvoll, stets die neueste Wine-Version und nicht die in Ihrer Distribution enthaltene zu benutzen. Die Heft-CD enthält die bei Redaktionsschluss aktuelle Version 0.9.5, die jeweils neueste Version ist unter [1] als RPM-Paket für alle EasyLinux-Distributionen erhältlich.
Windows-Programme installieren Sie unter Wine wie von Windows gewohnt mit dem Installationsprogramm der Anwendung. Doch zunächst müssen Sie Wine selbst einrichten. Da eine richtige Konfiguration darüber entscheidet, welche Programme funktionieren, die Details jedoch schwer verständlich sind, sollten Sie dazu das Programm WineTools verwenden (Abbildung 1). Sie finden es auf der Heft-CD oder unter [2]. Unter Mandriva Linux sollten Sie zusätzlich noch das Paket gettext von der Mandriva-DVD installieren.
Starten Sie WineTools [ALT+F2] und Eingabe von wt. Alle Meldungen, inklusive der, dass WineTools nicht mit der von Ihnen eingesetzten neuesten Wine-Version getestet wurde, bestätigen Sie mit OK. Aus dem Hauptdialog (Abbildung 1) wählen Sie Base Setup (Basis-Einrichtung). Zunächst müssen Sie ein Verzeichnis einrichten, das Wine als "vorgetäuschtes Windows-Laufwerk C" nutzen kann (Create a Fake Windows Drive). WineTools verwendet dazu den Ordner .wine/drive_c. Nur wenn im Konqueror die Option Ansicht / Versteckte Dateien anzeigen aktiv ist, zeigt der Datei-Manager dieses Verzeichnis an. WineTools fragt Sie nach nach dem mount point of the cdrom/dvd drive, also nach dem Verzeichnis im Dateisystem, über das Sie auf Ihr CD-ROM- oder DVD-Laufwerk zugreifen. Normalerweise ist die Voreinstellung korrekt. Geben Sie nun noch Ihren Namen und gegebenfalls einen Firmennamen ein, wenn WineTools Sie dazu auffordert.
Die folgenden Menüeinträge im Base Setup (Abbildung 2) laden Software von microsoft.com herunter. Dies ist lizenzrechtlich nur unter bestimmten Bedingungen zulässig: Das Herunterladen des TrueType Fonts (Schriftart) Arial, Voraussetzung für eine lesbare Anzeige in Windows-Programmen, ist zwar grundsätzlich legal. Doch die Datei DCOM98 dürfen laut zugehörigem Lizenzvertrag nur Besitzer einer Windows-98-Lizenz herunterladen und pro Lizenz nur einmal nutzen. Legal ist ihr Einsatz mit Wine also vermutlich nur, wenn Sie Windows 98 besitzen und DCOM98 auf Ihrem Windows-System nicht installiert ist. Zu den Microsoft Foundation Classes 4.x existiert weder auf dem Microsoft-Download-Portal ein Lizenzvertrag noch zeigt die Komponente bei der Installation einen solchen an. DCOM98 ist Voraussetzung für den Internet Explorer 6, der ebenfalls eine gültige Windows-Lizenz voraussetzt.
Die vier Komponenten Arial, DCOM98, die Microsoft Foundation Classes sowie der Internet Explorer in der deutschen Version sind Voraussetzung für die Installation der meisten Microsoft-Programme. Programme anderer Software-Hersteller laufen teilweise auch ohne sie, so dass Sie diese legal mit Wine nutzen können, ohne eine Windows-Lizenz zu besitzen. Im Einzelfall hilft nur Probieren, um herauszufinden, ob ein Programm mit Ihrer Wine-Konfiguration funktioniert. Immerhin ist Wine kostenlos verfügbar, und das Aufspielen mit dem Installationsprogramm ist meist kein großer Aufwand.
Wenn Sie die Schriftart Arial und alle Windows-Komponenten, für die Sie eine Lizenz besitzen, installiert haben, kehren Sie durch Klick auf Main Menu zum Hauptmenü zurück. Der nächste Menüeintrag, Install Windows System Software, lädt weitere Komponenten eines Windows-Systems herunter. Manche Anwendungen benötigen diese zur Ausführung. Möchten Sie zum Beispiel Software installieren, deren Setup-Programm nicht Setup.exe sondern [Programmname].msi heißt, dann benötigen Sie den Windows-Installer.
Viele kleinere Shareware-Programme setzen das Visual Basic Runtime in der Version 5 oder 6 voraus. Informationen zu den restlichen Komponenten erhalten Sie, wenn Sie das Kontrollkästchen Show Info (Informationen anzeigen) aktivieren: WineTools installiert die Software-Komponente dann nach Doppelklick nicht, sondern öffnet die zugehörige Download-Seite auf microsoft.com im Konqueror. Dort finden Sie eine kurze Information zu der Windows-Komponente auf Englisch. Alle Komponenten in diesem Untermenü setzen die Installation von DCOM98 und des Internet Explorers voraus.
Der nächste Menüeintrag im Hauptmenü, Install Microsoft TrueType core fonts, stellt Schriftarten zur Verfügung, die viele Windows-Programme als installiert voraussetzen. Der Download ist auch ohne Windows-Lizenz legal, so dass Sie sämtliche Schriftarten auf jeden Fall installieren sollten.
Der Hauptmenüeintrag Install tested Software (getestete Software installieren) erleichtert das Einrichten von Windows-Anwendungen. Klicken Sie auf das Plussymbol vor den Kategorien, um die Einträge, für die WineTools eine Installationshilfe bereitstellt, zu sehen. Ein Doppelklick auf den Programmnamen öffnet ein Dialogfeld, welches Sie fragt, ob das Setup-Programm nach dem Installationsprogramm suchen soll oder ob Sie das Setup-Programm per Hand auswählen möchten. Bei Installations-CDs sollte die automatische Auswahl funktionieren: Antworten Sie mit Yes.
Falls WineTools den Installer nicht findet, starten Sie die Installation für das gleiche Programm noch einmal. Wählen Sie diesmal im folgenden Dialog No und suchen Sie das Installationsprogramm per Hand. Meist heißt es Setup.exe oder Install.exe. Auch bei einer Windows-Datei mit der Endung msi handelt es sich um ein Installationsprogramm, das den Windows-Installer voraussetzt.
Wenn Sie ein Programm mit WineTools und dem zum Programm gehörigen Installers auf Ihre Festplatte gespielt haben (Abbildung 3), lässt es sich über [Alt-F2] und Eingabe des Programmnamens in Kleinbuchstaben starten: WineTools legt dazu Skripte in Ihrem Home-Verzeichnis an. Wenn das Starten nicht gelingt, öffnen Sie den Ordner [Homeverzeichnis]/binim Konqueror und sehen Sie nach, ob sich dort eine Datei mit passendem Namen befindet. Mit einem Klick im Konqueror können Sie Ihr Programm starten.
Die Programme, die Sie unter Install tested software finden, wurden vom WineTools-Programmautor getestet und sollten ohne Probleme laufen. Viele Anwendungen, die dort nicht aufgeführt sind, funktionieren allerdings ebenfalls. Einen Anhaltspunkt, für welche Programme dies gilt, finden Sie auf der Wine-Web-Seite unter [3]: Geben Sie den Namen der Anwendung, die Sie interessiert, in das Search-Feld am linken Rand ein.
Möchten Sie den Versuch wagen, ein Programm zu installieren, das unter Install tested software nicht zu finden ist, können Sie in der Textkonsole wine [Pfad zur Datei]/setup.exe eingeben. Einfacher ist es jedoch, den Konqueror so einzustellen, dass sich exe-Dateien mit einem Klick starten lassen. Gehen Sie dazu folgendenermaßen vor:
Nun lassen Sie sich die exe-Dateien der Windows-Programme mit einem Mausklick starten. Allerdings stellt dies auch ein Sicherheitsrisiko dar: Für Windows geschriebene Schadprogramme starten nun ebenfalls durch einen einfachen Klick und richten möglicherweise Schaden an, da sie über Wine auch auf Ihr Linux-Dateisystem zugreifen können. Dies gilt auch für Mail-Anhänge im exe-Format, die Sie in KMail öffnen.
Wenn die Installation bis zum Ende durchgelaufen ist, sollte sich die zum installierten Programm gehörende exe-Datei nun relativ zum Ordner [Homeverzeichnis]/.wine/drive_c an derselben Stelle befinden, an der sie auch unter Windows liegen würden. Normalerweise ist dies Programme/[Programmname]/[Programmname].exe. Da Sie nicht die Installationshilfe von WineTools in Anspruch genommen haben, lässt sich das Programm nicht durch Druck von [Alt-F2] und Eingabe des Programmnamens starten. Der Konqueror führt es jedoch nach Klick auf die exe-Datei aus.
Falls Sie das Programm bereits unter Windows installiert haben, können Sie notfalls Windows starten, um herauszufinden, wo die exe-Datei liegt: Klicken Sie mit der rechten Maustaste auf den Startmenüeintrag des Programms und wählen Sie Eigenschaften. Das Textfeld Ziel gibt die Lage der exe-Datei im Dateisystem an. Wenn Sie diese unter Linux gefunden haben, können Sie eine Verknüpfung auf Ihre Arbeitsfläche legen, indem Sie die Datei mit der Maus aus dem Konqueror-Fenster auf den Desktop ziehen und daraufhin die Option Hiermit verknüpfen wählen.
Nicht immer, doch mit zunehmendem Fortschritt des Wine-Projekts immer öfter gelingt es, Windows-Anwendungen unter Linux zum Laufen zu bringen (Abbildung 4). (pkr)
| Infos |
|
[1] Wine-Download: http://winehq.org/site/download
[2] WineTools-Download: http://www.von-thadden.de/Joachim/WineTools/index.html#download [3] Datenbank mit Windows-Anwendungen, die mit Wine funktionieren: http://appdb.winehq.org/ Software zum Artikel auf CD: Wine 0.9.5, WineTools 0.9 |
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 |
© 2012 Linux New Media AG |
Last modified: 2007-04-05 11:24
[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]