Frohe Ostern allen TroLugern, ich möchte Euch noch eine kleine Reminiszenz ins Osternest legen.
Warum einfach, wenns auch kompliziert geht ist ja die meist vorherrschende Meinung zu Gentoo. Viele, die sich schon einmal oberflächlich mit einer Gentoo-Installation und deren Details auseinandersetzt haben, würden dem sicher spontan zustimmen wollen. Aus meiner heutigen Sichtweise würde ich dagegen sagen, dass ich es benutze weil es so einfach und komfortabel, oder auch so geradlinig und konsequent ist. Wenn ich mich Heute zurück besinne, dann weiß ich noch, dass ich damals in 2007 gelegentlich über Programme gestolpert bin, die ich auch haben oder installieren wollte, aber für die es zu diesem Zeitpunkt noch keine Pakete für meine damals verwendeten Binären Distributionen gab. Gelegentlich stiess ich dann auf Anleitungen zum selber kompilieren dieser mir noch fehlenden Programme. Beim Durchlesen dieser für mich damals häufig kryptisch anmutenden Anweisungen fiel mir häufig auf, dass die Installationsanweisungen für Gentoo stets deutlich einfacher auszuführen waren, als die der anderen Distributionen. So stellte ich mir die Frage, warum so kompliziert vorgehen, wenns auch so einfach sei kann. Ich glaube das war der eigentliche Grund warum ich einst nachzuforschen begann, warum das so ist und wo die Hauptunterschiede von Gentoo zu den anderen Distros lagen und welche vor und Nachteile das ganze haben soll. Eines dieser Programme war damals beispielsweise Cinelerra, ein Videoschnitt-Programm das mich damals, mangels brauchbarere Alternativen, sehr interessierte. Selbst Heute finden sich noch einige alte Anweisungen zur Installation/Kompilation die diese Unterschiede aufzeigen, auch wenn Heute vermutlich für fast alle Distros Bin-Pakete zur Installation angeboten werden, so wiederholt sich die Geschichte doch regelmässig, nur die Paket-Namen dahinter ändern sich, Beispiele: Damalige Cinelerra-Kompilation aus den Quellen für: Ubuntu: http://www.g-raffa.eu/Cinelerra/HOWTO/compilation.html Fedora: http://crazedmuleproductions.blogspot.de/2010/02/fedora-12-x86-64-cinelerra-install.html Die Cinelerra-Seite die u.a darauf verweist: http://cinelerra-cv.org/getting_cinelerra.php Wenn ich mir so meine Gentoo Installation-Historie anschaue, dann sehe ich noch schön wann ich begann Cinelerra auszuprobieren und wie häufig ich es rekompiliert und im Rahmen meines Rolling-Release System-Upgrades aktualisiert habe: genlop -e cinelerra * media-video/cinelerra Thu Jul 17 17:50:21 2008 >>> media-video/cinelerra-20080717 Fri Aug 22 15:29:15 2008 >>> media-video/cinelerra-20080717 Sat Oct 18 21:02:49 2008 >>> media-video/cinelerra-20080717 Wed Feb 11 18:38:36 2009 >>> media-video/cinelerra-20090210 Fri Feb 20 14:57:20 2009 >>> media-video/cinelerra-20090210 Mon May 4 18:43:51 2009 >>> media-video/cinelerra-20090210 Thu Jun 4 18:03:20 2009 >>> media-video/cinelerra-20090210 Wed Jun 24 16:51:39 2009 >>> media-video/cinelerra-20090210 Thu Jun 25 18:13:17 2009 >>> media-video/cinelerra-20090210 Fri Aug 28 19:56:56 2009 >>> media-video/cinelerra-20090210 Sun Sep 13 17:18:17 2009 >>> media-video/cinelerra-20090210 Sat Oct 24 21:19:18 2009 >>> media-video/cinelerra-20090210 Thu Oct 29 19:17:30 2009 >>> media-video/cinelerra-20090210 Sun Jan 31 16:36:44 2010 >>> media-video/cinelerra-20090210-r1 Mon Feb 15 18:49:56 2010 >>> media-video/cinelerra-20090210-r1 Fri Mar 26 17:47:29 2010 >>> media-video/cinelerra-20100320 Mon Apr 26 18:45:54 2010 >>> media-video/cinelerra-20100320 Wed May 12 19:34:59 2010 >>> media-video/cinelerra-20100320 Sun Jun 6 16:29:38 2010 >>> media-video/cinelerra-20100320 Mon Jun 7 11:31:33 2010 >>> media-video/cinelerra-20100320 Sun Oct 31 13:20:11 2010 >>> media-video/cinelerra-20100320 Thu Nov 4 17:31:48 2010 >>> media-video/cinelerra-20101104 Sat Nov 20 17:17:06 2010 >>> media-video/cinelerra-20101104 Thu Feb 24 19:02:50 2011 >>> media-video/cinelerra-20101104 Fri Apr 29 15:29:42 2011 >>> media-video/cinelerra-20101104 Fri May 13 15:50:55 2011 >>> media-video/cinelerra-20101104 Tue May 24 18:19:23 2011 >>> media-video/cinelerra-20101104 Wed Sep 7 17:47:40 2011 >>> media-video/cinelerra-20101104 Tue Sep 20 18:58:39 2011 >>> media-video/cinelerra-20101104 Thu Oct 20 18:50:24 2011 >>> media-video/cinelerra-20101104 Mon Nov 28 19:45:36 2011 >>> media-video/cinelerra-20101104 Tue Dec 20 19:09:43 2011 >>> media-video/cinelerra-20101104 Thu Dec 22 18:02:35 2011 >>> media-video/cinelerra-20101104 Fri Dec 23 15:53:05 2011 >>> media-video/cinelerra-20111223 Sat Jan 28 17:08:00 2012 >>> media-video/cinelerra-20111223 Sun Jan 29 18:39:02 2012 >>> media-video/cinelerra-20111223 Tue Jan 31 21:07:56 2012 >>> media-video/cinelerra-20111223 Sat Mar 3 16:13:06 2012 >>> media-video/cinelerra-20111223 Sat Mar 3 16:52:29 2012 >>> media-video/cinelerra-20111223 Sun Apr 1 14:29:05 2012 >>> media-video/cinelerra-20111223 Sat Jul 7 14:10:37 2012 >>> media-video/cinelerra-20120707 Mon Jul 9 19:18:13 2012 >>> media-video/cinelerra-20120707 Sun Feb 24 11:03:45 2013 >>> media-video/cinelerra-20120707 Tue Mar 12 22:30:37 2013 >>> media-video/cinelerra-20120707 Fri Apr 5 18:52:48 2013 >>> media-video/cinelerra-20120707 Thu Apr 11 20:38:33 2013 >>> media-video/cinelerra-20120707 Wed Jun 19 18:23:29 2013 >>> media-video/cinelerra-20120707 Mon Jul 22 20:16:45 2013 >>> media-video/cinelerra-20120707 Thu Jul 25 17:18:40 2013 >>> media-video/cinelerra-20120707 Fri Aug 2 15:41:16 2013 >>> media-video/cinelerra-20120707 Sat Sep 14 21:24:43 2013 >>> media-video/cinelerra-20120707 Mon Sep 30 18:23:55 2013 >>> media-video/cinelerra-20120707 Fri Jan 24 17:42:44 2014 >>> media-video/cinelerra-20120707 Sat Mar 1 14:01:02 2014 >>> media-video/cinelerra-20120707 Wed Mar 12 21:14:53 2014 >>> media-video/cinelerra-20120707 Wed Mar 19 23:45:09 2014 >>> media-video/cinelerra-20120707 Thu May 15 17:43:33 2014 >>> media-video/cinelerra-20120707 Fri Jul 11 19:16:25 2014 >>> media-video/cinelerra-20140710 Thu Jul 31 10:56:27 2014 >>> media-video/cinelerra-20140710 Fri Dec 12 17:24:13 2014 >>> media-video/cinelerra-20140710 Mon Feb 9 17:48:00 2015 >>> media-video/cinelerra-20140710 Wed Feb 11 16:49:50 2015 >>> media-video/cinelerra-20140710 Übrigens, der Befehl für die erstmalige Installation von Cinelerra lautet zum Beispiel:# emerge -av cinelerra Das regelmäßige aktualisieren des gesamten systems dagegen z.B. # emerge -DuvaN @world Also im Grunde ganz einfach, jedenfalls wenn Gentoo erst einmal wunschgemäss installiert und konfiguriert ist. Noch ein weiteres aktuelleres Beispiel, dass mir kürzlich ein Kollege mitteilte: > Moin Kollegen, > ich bin gestern auf einen vielversprechenden Music-Player gestossen, was > Radiosender angeht. Den bekommt man mit: > aptitude install guayadeque > Die Fehlermeldung beim Öffnen von Internet-Radiostreams: > gstreamer missing plugin: > löst man mit: > aptitude install gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly > was/wer immer auch bad und ugly sein mag, danach funktionieren alle > Radiostreams. Mit einem Rechtsklick und "Aktualisieren", im Fenster der > Radiostream Genres werden tausendfach links sichtbar die zu > voreingestellten Sendern führen. Dabei sind auch Radiosender mit bis zu > 320kbps verfügbar. > Der Music-Player kann wohl auch mit lokal abgelegten > Musikarchiven umgehen, habe ich aber gestern nicht probiert. Hierbei Frage ich mich stets, wieso ich erst über eine Fehlermeldung des Programms erfahren muss, dass mir etwas fehlt? Ich vermute dass ist dem Umstand geschuldet, dass man in die Binär-Pakete meist den maximal möglichen Funktionsumfang hinein kompiliert, dann aber über das weglassen optionaler Abhängigkeiten, den Umfang zu reduzieren versucht, in dem man dessen hinzufügen oder nicht, dem User überlässt. Auch wenn das Programm dann zwar lauffähig ist, sind das im Grunde doch nicht erfüllte Abhängigkeiten, weshalb ich das ziemlich unsauber und wenig geradeaus nenne. Das scheinen mir alle Binären Distros gemein zu haben, auch wenn ich hier mal wieder Debian als hoffentlich repräsentatives Beispiel anführe, so soll das nicht gegen Debian gereichtet sein, sondern vielmehr dem generellen Vergleich dienen. Auch wenn man dem Nutzer im Vorfeld die Möglichkeit zur Überprüfung solcher optionaler Abhängigkeiten via Paketmanager oder Webrecherche mittels der Hinweise auf sogenannte recommends suggests enhances genannten Abhängigkeiten einräumt, so ist das meines Erachtens weniger sauber oder klar gegliedert, als eine eindeutige Handhabung von festzulegenden Definitionen. Diese setzt man dagegen bei Gentoo mittels sogenannter USE-Flags, die genau für diese Funktionalität dieser eben erwähnten optionalen Abhängigkeiten stehen, oder auch nicht und dann existiert diese Abhängigkeit und wird eingebaut, oder eben weggelassen - denn nur so ist das klar definiert, also wie sich das für mich gehört. Zumindest unter den Gesichtspunkten der reinen Lehre und diese sind eben klar und vorhersagbar und nicht von der gewählten Methode eines Distributors oder dessen Paketmanagers abhängig. Das ist es, was ich bei meinem Vortrag mit der Aussage, dass nach erfolgreicher Kompilation unter Gentoo, alle Abhängigkeiten zwangsläufig erfüllt sind, versuchte zum Ausdruck zu bringen. Wenn man auf dieser Seite hier: https://packages.debian.org/search?keywords=guayadeque&searchon=names&suite=all§ion=all auf die installierte Version seiner Debian-Installation (oldstable, stable, testing, unstable) geht, dann sieht man allerdings nur depends, nichts optionales, insofern nicht gerade ein besonders gutes Beispiel, aber ich denke davon finden sich genug andere. Vielleicht handelt es sich momentan sogar noch um einen Fehler bei Debian, denn bis dato scheint es so zu sein, dass die gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly hier gar keine Auflistung finden, also z.Zt. noch in keiner der o.g. Versionen. Schaut man sich den Abhängigkeitsbaum unter Gentoo an, dann sieht man, dass es in Version guayadeque-0.3.5 u.a. noch keine Abhängigkeit zu gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly gegeben hat. Diese ist hier erst mit Version-0.3.6_pre1887 eingezogen, wie im folgendem zu sehen: equery g guayadeque * Searching for guayadeque ... * dependency graph for media-sound/guayadeque-0.3.5 `-- media-sound/guayadeque-0.3.5 amd64 `-- dev-db/sqlite-3.8.8.3 (dev-db/sqlite) ~amd64 `-- dev-libs/glib-2.42.2 (dev-libs/glib) amd64 `-- media-libs/flac-1.3.1-r1 (media-libs/flac) amd64 `-- media-libs/gstreamer-0.10.36-r2 (media-libs/gstreamer) amd64 `-- media-libs/taglib-1.9.1-r2 (media-libs/taglib) amd64 `-- media-plugins/gst-plugins-soup-0.10.31-r1 (media-plugins/gst-plugins-soup) amd64 `-- net-misc/curl-7.41.0 (net-misc/curl) ~amd64 `-- sys-apps/dbus-1.8.16 (sys-apps/dbus) amd64 `-- x11-libs/wxGTK-2.8.12.1-r1 (x11-libs/wxGTK) amd64 [X] `-- dev-libs/libindicate-12.10.1 (dev-libs/libindicate) ~amd64 `-- media-libs/libgpod-0.8.3 (media-libs/libgpod) amd64 `-- sys-devel/gettext-0.19.4 (sys-devel/gettext) ~amd64 `-- virtual/pkgconfig-0-r1 (virtual/pkgconfig) amd64 `-- dev-util/cmake-3.1.0 (dev-util/cmake) ~amd64 `-- sys-devel/make-4.1-r1 (sys-devel/make) ~amd64 `-- sys-apps/findutils-4.5.14-r1 (>=sys-apps/findutils-4.4.0) ~amd64 [ media-sound/guayadeque-0.3.5 stats: packages (17), max depth (1) ] * dependency graph for media-sound/guayadeque-0.3.6_pre1887 `-- media-sound/guayadeque-0.3.6_pre1887 ~amd64 `-- dev-db/sqlite-3.8.8.3 (dev-db/sqlite) ~amd64 `-- dev-db/wxsqlite3-3.0.6.1-r1 (dev-db/wxsqlite3) ~amd64 `-- dev-libs/glib-2.42.2 (dev-libs/glib) amd64 `-- media-libs/flac-1.3.1-r1 (media-libs/flac) amd64 `-- media-libs/gstreamer-0.10.36-r2 (media-libs/gstreamer) amd64 [introspection] `-- media-libs/taglib-1.9.1-r2 (>=media-libs/taglib-1.6.4) amd64 `-- net-misc/curl-7.41.0 (net-misc/curl) ~amd64 `-- sys-apps/dbus-1.8.16 (sys-apps/dbus) amd64 `-- x11-libs/wxGTK-2.8.12.1-r1 (x11-libs/wxGTK) amd64 [X] `-- dev-libs/libindicate-12.10.1 (>=dev-libs/libindicate-0.7) ~amd64 `-- media-libs/libgpod-0.8.3 (media-libs/libgpod) amd64 `-- dev-perl/GStreamer-0.180.0 (dev-perl/GStreamer) amd64 `-- media-libs/gnonlin-0.10.17 (media-libs/gnonlin) amd64 `-- media-plugins/gst-plugins-alsa-0.10.36-r1 (media-plugins/gst-plugins-alsa) amd64 `-- media-plugins/gst-plugins-ffmpeg-0.10.13_p201211-r3 (media-plugins/gst-plugins-ffmpeg) ~amd64 `-- media-plugins/gst-plugins-gio-0.10.36-r1 (media-plugins/gst-plugins-gio) amd64 `-- media-plugins/gst-plugins-gnomevfs-0.10.36-r1 (media-plugins/gst-plugins-gnomevfs) amd64 `-- media-plugins/gst-plugins-libnice-0.1.10 (media-plugins/gst-plugins-libnice) amd64 `-- media-plugins/gst-plugins-pulse-0.10.31-r1 (media-plugins/gst-plugins-pulse) amd64 `-- media-plugins/gst-plugins-soup-0.10.31-r1 (media-plugins/gst-plugins-soup) amd64 `-- media-plugins/gst-plugins-x-0.10.36-r1 (media-plugins/gst-plugins-x) amd64 `-- media-libs/gst-plugins-bad-0.10.23-r2 (media-libs/gst-plugins-bad) amd64 `-- media-libs/gst-plugins-base-0.10.36-r2 (media-libs/gst-plugins-base) ~amd64 `-- media-libs/gst-plugins-good-0.10.31-r1 (media-libs/gst-plugins-good) amd64 `-- media-libs/gst-plugins-ugly-0.10.19-r1 (media-libs/gst-plugins-ugly) amd64 `-- app-arch/unzip-6.0-r3 (app-arch/unzip) amd64 `-- sys-devel/gettext-0.19.4 (sys-devel/gettext) ~amd64 `-- virtual/pkgconfig-0-r1 (virtual/pkgconfig) amd64 `-- sys-devel/make-4.1-r1 (sys-devel/make) ~amd64 `-- dev-util/cmake-3.1.0 (>=dev-util/cmake-2.8.12) ~amd64 `-- sys-apps/findutils-4.5.14-r1 (>=sys-apps/findutils-4.4.0) ~amd64 [ media-sound/guayadeque-0.3.6_pre1887 stats: packages (32), max depth (1) ] * dependency graph for media-sound/guayadeque-0.3.7 `-- media-sound/guayadeque-0.3.7 ~amd64 `-- dev-db/sqlite-3.8.8.3 (dev-db/sqlite) ~amd64 `-- dev-db/wxsqlite3-3.0.6.1-r1 (dev-db/wxsqlite3) ~amd64 `-- dev-libs/glib-2.42.2 (dev-libs/glib) amd64 `-- media-libs/flac-1.3.1-r1 (media-libs/flac) amd64 `-- media-libs/gstreamer-0.10.36-r2 (media-libs/gstreamer) amd64 [introspection] `-- media-libs/taglib-1.9.1-r2 (>=media-libs/taglib-1.6.4) amd64 `-- net-misc/curl-7.41.0 (net-misc/curl) ~amd64 `-- sys-apps/dbus-1.8.16 (sys-apps/dbus) amd64 `-- x11-libs/wxGTK-2.8.12.1-r1 (x11-libs/wxGTK) amd64 [X] `-- dev-libs/libindicate-12.10.1 (>=dev-libs/libindicate-0.7) ~amd64 `-- media-libs/libgpod-0.8.3 (media-libs/libgpod) amd64 `-- dev-perl/GStreamer-0.180.0 (dev-perl/GStreamer) amd64 `-- media-libs/gnonlin-0.10.17 (media-libs/gnonlin) amd64 `-- media-plugins/gst-plugins-alsa-0.10.36-r1 (media-plugins/gst-plugins-alsa) amd64 `-- media-plugins/gst-plugins-ffmpeg-0.10.13_p201211-r3 (media-plugins/gst-plugins-ffmpeg) ~amd64 `-- media-plugins/gst-plugins-gio-0.10.36-r1 (media-plugins/gst-plugins-gio) amd64 `-- media-plugins/gst-plugins-gnomevfs-0.10.36-r1 (media-plugins/gst-plugins-gnomevfs) amd64 `-- media-plugins/gst-plugins-libnice-0.1.10 (media-plugins/gst-plugins-libnice) amd64 `-- media-plugins/gst-plugins-pulse-0.10.31-r1 (media-plugins/gst-plugins-pulse) amd64 `-- media-plugins/gst-plugins-soup-0.10.31-r1 (media-plugins/gst-plugins-soup) amd64 `-- media-plugins/gst-plugins-x-0.10.36-r1 (media-plugins/gst-plugins-x) amd64 `-- media-libs/gst-plugins-bad-0.10.23-r2 (media-libs/gst-plugins-bad) amd64 `-- media-libs/gst-plugins-base-0.10.36-r2 (media-libs/gst-plugins-base) ~amd64 `-- media-libs/gst-plugins-good-0.10.31-r1 (media-libs/gst-plugins-good) amd64 `-- media-libs/gst-plugins-ugly-0.10.19-r1 (media-libs/gst-plugins-ugly) amd64 `-- app-arch/unzip-6.0-r3 (app-arch/unzip) amd64 `-- sys-devel/gettext-0.19.4 (sys-devel/gettext) ~amd64 `-- virtual/pkgconfig-0-r1 (virtual/pkgconfig) amd64 `-- sys-devel/make-4.1-r1 (sys-devel/make) ~amd64 `-- dev-util/cmake-3.1.0 (>=dev-util/cmake-2.8.12) ~amd64 `-- sys-apps/findutils-4.5.14-r1 (>=sys-apps/findutils-4.4.0) ~amd64 [ media-sound/guayadeque-0.3.7 stats: packages (32), max depth (1) ] Womöglich haben die Debian-Paketmantainer ja vergessen, diese Abhängigkeiten in späteren Versionen hinzuzufügen. Ansonsten gilt aber auch hier wieder ähnliches Bild, wie oben bereits für Cinelerra gezeichnet, wenn es um den Bau aus den Quellen gilt. Davon gibt es auch hier einige Beschreibungen zur Vorgehensweise: http://guayadeque.org/index.php?p=/page/installing Besten Gruß und happy reading, Andy.
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Trolug_trolug.de mailing list trolug@trolug.de https://ml01.ispgateway.de/mailman/listinfo/trolug_trolug.de