[[Vorlage(archiviert)]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Programmen] [:Packprogramme: Archive entpacken] [:Programme_kompilieren: Pakete aus dem Quellcode erstellen] [:Paketinstallation_DEB: Ein einzelnes Paket installieren] }}} [[Inhaltsverzeichnis(1)]] Da in den offiziellen Paketquellen von Ubuntu nicht immer die neuste Version der [:Archiv/Internet DJ Console:] enthalten ist, diese aber meist einige Verbesserungen mitbringt, bietet es sich an, das Programm selbst zu kompilieren. Wer sich über eine verbesserte Streaming-Architektur, die Verbindung zu mehreren Servern erlaubt, eine CPU-schonendere Mikrofon-Steuerung, Unterstützung von Replay Gain und viele kleine Verbesserungen freut, sollte diesen Artikel lesen. = Voraussetzungen = Die Pakete '''libshout-idjc3''' und '''idjc''' aus den offiziellen Paketquellen sollten im Vorfeld deinstalliert werden. = Abhängigkeiten = Folgende Pakete müssen vor dem Kompilieren installiert werden [1]: {{{#!vorlage Paketinstallation python-all-dev python-central python-gtk2-dev checkinstall libvorbis-dev libxine-dev libsamplerate0-dev libshout3-dev libsndfile1-dev libjack-dev, universe python-mutagen }}} == Zusätzliche Formate == Folgende Pakete sind optional, werden aber für die Unterstützung von [:FLAC:] (Free Lossless Audio Codec) und der proprietären Formate MP3 und MP4 benötigt: {{{#!vorlage Paketinstallation libflac-dev, für [:FLAC:] python-eyed3, MP3-Metadaten auslesen libmad0-dev, MP3 abspielen libmp3lame-dev, multiverse, für MP3 libfaad-dev, multiverse, für MP4 }}} = Quellcode = Der Quellcode kann auf zwei unterschiedlichen Wegen bezogen werden: einmal die stabile Version als Archivdatei und einmal über den aktuellen Quellcode der Entwickler. Solange nicht ein spezieller Bedarf dagegen spricht, sollte man die stabile Version bevorzugen. [[Vorlage(Fremd, Software)]] == Stabile Version = Nun lädt man zwei Archivdateien mit dem aktuellen Quellcode von der [sourceforge:idjc/files:SourceForge-Projektseite] {dl} herunter und entpackt [2] diese. Benötigt werden [https://sourceforge.net/projects/libshoutidjc.idjc.p/files/ libshout-idjc-VERSION.tar.gz] und [http://sourceforge.net/projects/idjc/files/idjc/ idjc-VERSION.tar.gz], wobei `VERSION` für die jeweils aktuelle Version steht. === libshout-idjc === Die Bibliothek '''libshout-idjc''' muss zuerst kompiliert werden. Die Befehle in Kurzform (Stand: 05/2014): {{{#!vorlage Befehl wget http://downloads.sourceforge.net/project/idjc/libshout-idjc/libshout-idjc-2.3.1.tar.gz tar xfvz libshout-idjc-2.3.1.tar.gz cd libshout-idjc-2.3.1 ./configure CFLAGS="-O2" --prefix=/usr make sudo make install sudo ldconfig }}} Empfehlenswert ist statt `sudo make install` die Verwendung des Befehls: {{{#!vorlage Befehl sudo checkinstall }}} der ein '''.deb'''-Paket erstellt, das später wieder problemlos deinstalliert werden kann [4]. Installiert wird mittels des Befehls: {{{#!vorlage Befehl sudo dpkg -i PAKETNAME.deb }}} Die Kompilierung von IDJC selbst unterscheidet sich bei den beiden Varianten nicht. == Entwicklerversion == Wer die Entwicklerversion nutzen möchte, benötigt zusätzliche Werkzeuge, unter anderem [:Git:]: {{{#!vorlage Paketinstallation git-core autoconf libtool }}} Der Quellcode kann nun geladen werden und die passende Umgebung zum Bauen erstellt werden: {{{#!vorlage Befehl git clone git://git.code.sf.net/p/idjc/code idjc cd idjc ./bootstrap }}} = Kompilieren und Paketieren = Der Quellcode kann wie üblich kompiliert und installiert werden [3]: {{{#!vorlage Befehl ./configure CFLAGS="-O2" --prefix=/usr make sudo make install }}} Empfehlenswert ist auch hier (statt `sudo make install`): {{{#!vorlage Befehl sudo checkinstall }}} zur Erstellung eines '''.deb'''-Pakets, das anschließend wie oben angegeben installiert wird. Bei Punkt 10 des checkinstall-Menüs ''"Requires"'' sollten die Abhängigkeiten angegeben werden. Hierbei können statt '''`libavcodec-extra-54`''' und '''`libavformat-extra-54`''' auch '''`libavcodec54`''' und '''`libavformat54`''' angegeben werden. Man sollte also zuvor prüfen, ob man eine der beiden Versionen bereits installiert hat und diese wählen. Man gibt die Abhängigkeiten in folgender Form an: {{{ libavcodec-extra-54, libavformat-extra-54, libc6, libflac8, libjack0, libmad0, libogg0, libsamplerate0, libshout3, libsndfile1, libspeex1, libvorbis0a, libvorbisenc2, libvorbisfile3, python, python-gtk2, jackd, vorbis-tools }}} = Links = * [:Archiv/Internet DJ Console:] - Hauptartikel # tag: Internet, Multimedia