ubuntuusers.de

Du betrachtest eine alte Revision dieser Wikiseite.

Kompilieren

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist mit keiner aktuell unterstützten Ubuntu-Version getestet! Bitte teste diesen Artikel für eine Ubuntu-Version, welche aktuell unterstützt wird. Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Der Vorteil eines selbstkompilierten Wine ist, dass es perfekt an den eigenen PC angepasst ist, Patches eingespielt und Kollisionen zwischen Wine und vorinstallierten Paketen vermieden werden können. Dieser Artikel erläutert zusätzlich die Installation und Deinstallation selbstkompilierter Wine-Pakete.

Abhängigkeiten

Fast alle erforderlichen Pakete zum Kompilieren, Installieren und Benutzen von Wine werden im Laufe dieses Artikels automatisch installiert und hier daher nicht im Einzelnen aufgeführt.

Zusätzlich muss außerdem folgendes Paket installiert werden [1]:

  • binfmt-support (main, ab 18.10 in universe)

Befehl zum Installieren der Pakete:

sudo apt-get install binfmt-support 

Oder mit apturl installieren, Link: apt://binfmt-support

Hinweise für 64-Bit-Wine

Die folgende Anleitung deckt 32-Bit- und 64-Bit-Versionen gleichermaßen ab. Es gibt jedoch ein paar Besonderheiten für die 64-Bit-Version.

Wer ein 64-Bit-Wine installiert, muss sich bewusst sein, dass der Befehl nicht wine, sondern wine64 lautet und dass Hilfsprogramme wie winecfg nicht im $PATH liegen, sondern als EXE-Datei aufgerufen werden müssen, z.B. $WINEPREFIX/drive_c/windows/system32/winecfg.exe. Das 32-Bit-Wine muss zusätzlich installiert werden, am besten in der gleichen Version, um Windows-Programme in einer bereits bestehenden, mit einem 32-Bit-Wine angelegten Wine-Umgebung zu starten. Dazu hat man drei Möglichkeiten: Entweder installiert man ein fertiges Paket (wine1.x-i386, Version entsprechend anpassen) aus den Paketquellen, oder man befolgt die vorliegende Anleitung in einem 32-Bit-System, oder man befolgt die Anleitung im Wine-Wiki, wie man ein 32-Bit-Wine in einem 64-Bit-System kompiliert: WineOn64bit 🇬🇧

Installation

Je nachdem, welche Quellen man wählt, bieten sich zwei verschiedene Methoden an.

Debian-Methode mit APT

Die für Ubuntu bereitgestellten Quellcode-Pakete in den offiziellen Quellen oder im offiziellen Wine-PPA bieten den Vorteil, bereits ein debian-Verzeichnis mit Debian-Dateien zu beinhalten, welches die Erstellung von echten Debian-Paketen erleichtert. Beide Schritte, das Beziehen und Kompilieren des Quellcodes, lassen sich am einfachsten mit APT erledigen. Man erhält schließlich DEB-Pakete, die den Debian-Standards entsprechen und über den Privatgebrauch hinaus auch verteilt werden können.

Vorbereitung

Möchte man die neueste Wine-Version kompilieren, fügt man mit Root-Rechten [3] das offizielle PPA des Wine-Teams zu den Paketquellen hinzu [5].

Adresszeile zum Hinzufügen des PPAs:

  • ppa:ubuntu-wine/ppa

Hinweis!

Zusätzliche Fremdquellen können das System gefährden.


Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen sind der Wiki/Vorlagen/PPA/ppa.png PPA-Beschreibung des Eigentümers/Teams ubuntu-wine zu entnehmen.

sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get update 

Alternativ kann man die folgenden Schritte auch mit der älteren Version aus der Ubuntu-Quelle universe durchführen.

Nun öffnet man ein Terminal [2] und installiert die Abhängigkeiten zum Kompilieren:

Befehl zum Installieren der Build-Abhängigkeiten:

sudo apt-get build-dep wine 

sudo aptitude build-depends wine 

Benutzt man ein 64-Bit-System, ist zusätzlich ein 32-Bit-Wine erforderlich, um die Installations-Abhängigkeiten zu erfüllen. Diese Abhängigkeit lässt sich in der Datei debian/control in der Depends-Zeile für das Paket wine-1.x entfernen (Wine-Version entsprechend anpassen). Da man die 32-Bit-Version mit hoher Wahrscheinlichkeit sowieso benötigen wird, ist die Nachinstallation des fertigen Pakets aus den Paketquellen jedoch am einfachsten:

  • wine1.x-i386

Befehl zum Installieren der Pakete:

sudo apt-get install wine1.x-i386 

Oder mit apturl installieren, Link: apt://wine1.x-i386

Siehe auch die Hinweise für 64-Bit-Wine.

Kompilieren

Anschließend wird entweder der Wine-Quellcode bloß heruntergeladen, ohne ihn zu kompilieren, damit man zuvor noch Einstellungen vornehmen kann:

apt-get source wine 

In diesem Fall wechselt man hinterher in das Quellcode-Verzeichnis und kompiliert ihn mit folgendem Befehl:

dpkg-buildpackage -rfakeroot -uc -b 

Oder man lädt den Quellcode herunter und kompiliert ihn ohne besondere Einstellungen gleich im Anschluss:

apt-get --build source wine 

Der Vorgang kann je nach Rechenleistung des PCs etwas dauern. Am Ende erhält man im selben Verzeichnis wie dem, in dem man die Befehle ausführte (für gewöhnlich das persönliche Verzeichnis), mehrere für die jeweilige Architektur des Betriebssystems (32- oder 64-Bit) gefertigte DEB-Pakete.

Wine-Pakete installieren

Die DEB-Pakete mit dem Namensbestandteil -dev oder -dbg sind optional und werden sinnvollerweise nur von Benutzern installiert, die ihren Zweck kennen. Alle anderen DEB-Pakete sind hingegen erforderlich. Sie werden wegen ihrer gegenseitigen Abhängigkeiten nicht mit einem grafischen Programm, sondern in einem Terminal installiert, damit ihnen nicht fälschlicherweise die Pakete aus den offiziellen Quellen vorgezogen werden (Wine-Version im Folgenden bitte anpassen).

Auf 32-Bit-Systemen:

sudo dpkg --install wine1.x-i386_*.deb wine1.x_*.deb wine_*.deb 

Auf 64-Bit-Systemen:

sudo dpkg --install wine1.x-amd64_*.deb wine1.x_*.deb wine_*.deb 

Allgemeine Methode und checkinstall

Nicht für Ubuntu oder Debian präparierte Quellcode-Pakete enthalten kein debian-Verzeichnis mit Debian-Dateien. Statt diese zu erstellen, wird der Quellcode mit dieser Methode auf herkömmliche Weise kompiliert und anschließend mit checkinstall in einem einzelnen DEB-Paket gepackt, welches allerdings nicht den Debian-Standards gerecht wird. Diese Methode bietet sich daher eher für den privaten Gebrauch der Pakete, nicht für deren Verteilung an.

Vorbereitung

Da man durch Methode 1 entweder die neuste Wine-Version oder die gerade in den Ubuntu-Quellen aktuelle Wine-Version bekommt, was mitunter nicht gewünscht ist, kann man sich auch alternativ von ibiblio.org ⮷ die gewünschte Version als .tar.bz2-Archiv herunterladen.

Außerdem muss folgendes Paket installiert werden, um später ein einzelnes DEB-Paket zu erstellen [1]:

  • checkinstall

Befehl zum Installieren der Pakete:

sudo apt-get install checkinstall 

Oder mit apturl installieren, Link: apt://checkinstall

Nun öffnet man ein Terminal [2] und installiert die Abhängigkeiten zum Kompilieren:

Befehl zum Installieren der Build-Abhängigkeiten:

sudo apt-get build-dep wine 

sudo aptitude build-depends wine 

Hinweis:

Dieser Befehl installiert diejenigen Abhängigkeiten zum Kompilieren, welche das Quellpaket der jüngsten Wine-Version in den Paketquellen angibt - und nicht die des im vorherigen Schritt heruntergeladenen Quellpakets. Im Einzelfall, bei viel älteren oder viel neueren Versionen, können sich diese Abhängigkeiten unterscheiden und müssen dann selber manuell nachinstalliert werden.

Kompilieren

Nach dem Entpacken [6] des anfangs heruntergeladenen Archivs, öffnet man ein Terminal [2], wechselt in das neue Verzeichnis und konfiguriert die Umgebung. Dieser Schritt unterscheidet sich je nachdem, ob man ein 32- oder ein 64-Bit-System benutzt. Dessen ungeachtet können natürlich noch andere Optionen hinzugefügt werden.

Auf 32-Bit-Systemen für ein 32-Bit-Wine:

./configure 

Auf 64-Bit-Systemen für ein 64-Bit-Wine:

./configure --enable-win64 

Nun kompiliert [7] man das Programm: und erstellt das DEB-Paket:

make 

Nun ist Wine bereits einsatzfähig und kann mit dem im selben Verzeichnis enthaltenen wine-Skript benutzt werden, unabhängig davon, welche andere Wine-Version bereits im System installiert ist.

Paketierung

Der folgende Befehl erzeugt, im selben Verzeichnis ausgeführt, ein DEB-Paket:

checkinstall --fstrans=yes --install=no 

Die Option --install=no deaktiviert die automatische Installation des DEB-Pakets. --fstrans=yes verhindert, dass checkinstalls interner make install-Aufruf die Wine-Dateien bereits an der Paketverwaltung vorbei installiert. Diese Kombination stellt sicher, dass tatsächlich nur das DEB-Paket erstellt, aber sonst noch nichts am System geändert wird.

Am Ende erhält man im selben Verzeichnis ein DEB-Paket, welches man installieren kann. [4]

Deinstallation

Wer das selbstkompilierte Wine wieder ersetzen will, muss zuerst das alte Paket vollständig löschen und dann das Paket aus den Quellen wieder installieren [1]. Zuletzt muss möglicherweise noch Wine mittels dpkg-reconfigure neukonfiguriert werden.

  • Wine

  • WineOn64bit 🇬🇧 - Ein 32-Bit-Wine in einem 64-Bit-System kompilieren

Diese Revision wurde am 3. August 2019 20:22 von Beforge erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Emulation und Virtualisierung, Wine, Windows