[[Vorlage(Getestet, bionic, focal )]] {{{#!vorlage Wissen [:Programme kompilieren: Pakete aus dem Quellcode erstellen] [:Pakete installieren: Installation von Programmen] [:Paketinstallation_DEB: Ein einzelnes Paket installieren] [:Paketquellen freischalten: Bearbeiten von Paketquellen] [:Terminal: Ein Terminal öffnen] [:Editor: Einen Editor öffnen] }}} [[Inhaltsverzeichnis()]] [:MPlayer:] selbst aus dem Quellcode zu kompilieren[1] ist in den meisten Fällen __nicht__ notwendig. Eine selbst kompilierte Version bietet jedoch folgende Vorteile: * aktuellere Version mit Neuentwicklungen, die in Ubuntu noch nicht berücksichtigt sind * weitere (unfreie) [:Codecs:] können direkt eingebunden und genutzt werden * deutschsprachige Oberfläche Bei der hier beschriebenen Methode werden neben dem eigentlichen Programm auch die Pakete für die graphische Oberfläche, die Dokumentation, die Debugging-Dateien sowie [:MEncoder:] in aktuellster Version erstellt. = Vorbereitung = Es müssen zunächst folgende Pakete installiert[2] werden: {{{#!vorlage Paketinstallation subversion dpkg-dev fakeroot pbuilder build-essential dh-make debhelper devscripts patchutils quilt gcc git-buildpackage pristine-tar git-core mplayer-skins, wenn die GUI verwendet werden soll yasm x11proto-xf86dga-dev libxxf86dga-dev }}} Ggf. die Paketbau-Abhängigkeiten herunterladen, z.B. mit {{{#!vorlage Befehl sudo apt-get build-dep mplayer }}} = Quellcode herunterladen = Zunächst wird mit dem Befehl [5] {{{#!vorlage Befehl svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer }}} die neueste Version des Quellcodes von MPlayer mittels [:Archiv/Subversion:Subversion] heruntergeladen. Dabei wird ein neuer Ordner '''~/mplayer''' z.B. im eigenen Homeverzeichnis angelegt. = Quelltext anpassen = Bevor man mit dem Kompiliervorgang beginnen kann, können zunächst die gewünschten Optionen gesetzt werden. Dies geschieht durch die Bearbeitung der Datei '''~/mplayer/debian/rules''' mit einem Editor [6]. Dort müssen im Abschnitt `CONFIGURE_FLAGS` die Optionen durch die Eigenen ersetzt werden; getestet wurde unter [:Xenial:Ubuntu 16.04] ohne `--enable-radio` und `--enable-xvmc`. Wichtig sind hier vor allem die Optionen * `--language=de` - nur deutschsprachige Oberfläche * `--enable-gui` - um GMPlayer verwenden zu können Normalerweise erkennt das Skript '''configure''' die auf dem System vorhandenen Bibliotheken und Codecs und bindet sie automatisch ein. Ein explizites Angeben (wie z.B. `--with-theora` oder `--enable-xshape`) ist nur notwendig, falls sie nicht automatisch erkannt werden (und man sicher weiß, dass die entsprechenden Bibliotheken installiert sind). Eine Übersicht aller möglichen Optionen erhält man durch den Aufruf von {{{#!vorlage Befehl ./configure --help }}} im Terminal[5]. Nach den Änderungen muss die '''rules'''-Datei gespeichert werden. Anschließend muss man noch die Version von MPlayer anpassen, damit das Paket bei der Aktualisierung nicht mit einer Version aus den offiziellen oder anderen Quellen überschrieben wird. Dazu muss eine Datei '''~/mplayer/debian/changelog''' mit Hilfe eines Editors[6] angelegt werden, die in der SVN-Version nicht vorhanden ist. Sie sollte in etwa wie folgt aussehen: {{{ mplayer (2:1.3++svn37938) xenial; urgency=low * build from svn upstream release r37938 -- Max Mustermann Sun, 14 May 2017 15:06:31 +0200 mplayer (1.0svn) unstable; urgency=low * change version naming from cvs to svn. -- Aurelien Jacobs Tue, 20 Jun 2006 13:02:14 +0200 ... }}} Wichtig ist hierbei, dass man eine Version wählt, die höher ist als die aus den offiziellen oder Fremdquellen. Letzteres ist davon abhängig, ob und welche Fremdquellen man eingebunden hat. Zur Kontrolle dient beispielsweise die [http://packages.ubuntu.com/mplayer Ubuntu Paketsuche] {en}. {{{#!vorlage Warnung Das Format des neuen Eintrags in der '''changelog'''-Datei muss beachtet werden, da sonst der nachfolgende Paketbau fehlschlägt. }}} = Kompilierung = Die Kompilierung kann, je nach Rechnerleistung, von unter 20 Minuten bis zu mehr als 45 Minuten in Anspruch nehmen, sie erfolgt mit dem Befehlsaufruf: {{{#!vorlage Befehl ./configure fakeroot debian/rules binary }}} Ggf. erscheint während des Erstellens der Pakete die Meldung {{{ No FFmpeg checkout, press enter to download one with git or CTRL+C to abort }}} die Kompilierung stoppt zunächst. Bei Bestätigung mit [[Vorlage(Tasten, enter)]] wird ein weiteres Verzeichnis '''/mplayer/ffmpeg/.git/''' angelegt, in das die benötigten [:FFmpeg:]-Daten heruntergeladen werden. Nach Beendigung befindet sich die neuen Pakete * '''mplayer_1.0~rc5++svn34104_amd64.deb''' (standard) * '''mplayer-doc_1.0~rc5++svn34104_amd64.deb''' (standard) * '''mplayer-gui_1.0~rc5++svn34104_amd64.deb''' (optional) * '''mplayer-dbg_1.0~rc5++svn34104_amd64.deb''' (optional, Debug-Datei) * '''mencoder_1.0~rc5++svn34104_amd64.deb''' (empfohlen) im Verzeichnis oberhalb des '''mplayer'''-Verzeichnisses. Dieses sollte sich ganz normal installieren [3] lassen. Dabei lassen sich alle gemeinsam im entsprechenden Verzeichnis mit dem Befehl {{{#!vorlage Befehl sudo dpkg -i *.deb }}} installieren, wobei sich gegenseitige Abhängigkeiten selbst lösen. Dabei wird auch ein Eintrag im GNOME-Menü unter ''"Anwendungen -> Unterhaltungsmedien -> MPlayer"'' angelegt. = Links = * [:MPlayer:] - Hauptartikel * [http://www.mplayerhq.hu/DOCS/HTML/de/ MPlayer-Dokumentation] {de} * [http://wiki.debianforum.de/MPlayer Mplayer-Kompilierung] {de} #tag: Multimedia